導航:首頁 > 編程語言 > phpiosbadge

phpiosbadge

發布時間:2023-06-11 10:06:30

『壹』 php怎麼接收ios 上傳圖片 的數據流 ios 用msdata .php要怎麼接收 然後保存成圖片

你直接從post中取數據流,寫入文件,或者保存到資料庫。

『貳』 ios推送消息 用php推送怎麼實現

php實現ios推送的方法:首先把要發送的消息以及iPhone標識打包,並發送給APNS;然後查找有相應標識的iPhone,並把消息發送到iPhone;最後把發來的消息傳遞給相應的應用程序,並且按照設定彈出Push通知即可。 可以分為三個階段:
第一階段:應用程序把要發送的消息、目的iPhone的標識打包,發給APNS。
第二階段:APNS在自身的已注冊Push服務的iPhone列表中,查找有相應標識的iPhone,並把消息發送到iPhone。
第三階段:iPhone把發來的消息傳遞給相應的應用程序,並且按照設定彈出Push通知。
推送服務極光還不錯,極光多種消息類型,開發者可以輕松地通過極光發送各個移動平台的系統通知,還可以在控制台編輯多種富文本展示模板; 極光還提供自定義消息的透傳,客戶端接到消息內容後根據自己的邏輯自由處理。

『叄』 如何透過 PHP 發送 Apple Notification Push

在 PHP 的實作上透過 stream_context_create() 函式建立 SSL 連線,再利用 pack() 函式實作上述的規格來傳送 Bytes 資料 (Payload),以下是 PHP 最精簡的發送訊息程式碼,執行後可以順利與 APNS 溝通與發送訊息。各位可以依據需求修改程式來發送 Enhanced 或 Simple 訊息,或者切換 Sandbox 或 Proction 環境。程式範例如下:

<?php

// Proction mode

$certificateFile = 'apns-dis.pem';

$pushServer = 'ssl://gateway.push.apple.com:2195';

$feedbackServer = 'ssl://feedback.push.apple.com:2196';

// Sandbox mode

$certificateFile = 'apns-dev.pem';

$pushServer = 'ssl://gateway.sandbox.push.apple.com:2195';

$feedbackServer = 'ssl://feedback.sandbox.push.apple.com:2196';

// push notification

$streamContext = stream_context_create();

stream_context_set_option($streamContext, 'ssl', 'local_cert', $certificateFile);

$fp = stream_socket_client(

$pushServer,

$error,

$errorStr,

100,

STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT,

$streamContext

);

// make payload

$payloadObject = array(

'aps' => array(

'alert' => 'Server Time:'.date('Y-m-d H:i:s'),

'sound' => 'default',

'badge' => 3

),

'custom_key' => 'custom_value'

);

$payload = json_encode($payloadObject);

$deviceToken = '';

$expire = time() + 3600;

$id = time();

if ($expire) {

// Enhanced mode

$binary= pack('CNNnH*n', 1, $id, $expire, 32, $deviceToken, strlen($payload)).$payload;

} else {

// Simple mode

$binary= pack('CnH*n', 0, 32, $deviceToken, strlen($payload)).$payload;

}

$result = fwrite($fp, $binary);

fclose($fp);

?>

『肆』 PHP極光推送如何自定義消息提醒聲音。

->iosNotification($Content,Array('badge'=>'+1','sound'=>'sub.caf'))

這是ios的,安卓我之前測試貌似不行

『伍』 apple push notification service badge 怎麼獲取

一.前期准備

1.從Keychain中選擇Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority...
填寫User email(apple開發者帳號)/Common name(key的名字),選擇Save to Disk,保存到Desktop,一定要有個復選框出來的!完成後會在鑰匙串種加入2個密鑰
2.做完上一步,Keychain會增加一個key,在Keychain中找到Key欄,將1中生成的private key導出為.p12文件,比如Test_Push_Notifier_PrivateKey.p12

3.登錄developer.apple.com的iOS portal,申請AppID,需要具體到com.XXX.XXX,即不允許最後一個欄位為模糊匹配
隨後對該AppID進行配置,選中Push Notification,上傳前面生成的CSR文件,Portal會自動生成aps_development.cer,下載aps_development.cer
4.在Portal上生成新的Provision,將AppID選中為com.XXX.XXX,並下載新的test.mobileprovision文件,並導入到Xcode之中
5.現在我們有兩個文件:Test_Push_Notifier_PrivateKey.p12/aps_development.cer。打開終端,使用openssl對兩個文件進行加密
加密aps_development.cer:
openssl x509 -in aps_development.cer -inform der -out cer_dev.pem
加密Test_Push_Notifier_PrivateKey.p12
openssl pkcs12 -nocerts -in Test_Push_Notifier_PrivateKey.p12 -out key.pem
PHP服務端則將兩者合並:
cat cer_dev.pem key.pem > Push_Notifier.pem
java服務端要轉化為p12格式,用以下命令轉化:

openssl pkcs12 -export -in cer_dev.pem -inkey key.pem -out cred_dev.p12
6.測試ApplePushServer正常:
telnet gateway.sandbox.push.apple.com 2195
7.測試加密證書工作正常:
openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert cer_dev.pem -key key.pem
二.客戶端開發
需要實現的代碼和覆蓋的方法

1.在AppDelegate.m中修改-(BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
函數體中添加:
[[UIApplication sharedApplication] :(UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeSound|UIRemoteNotificationTypeAlert)];
2.在AppDelegate.m中添加下列函數:
-(void)application:(UIApplication*)application :(NSData*)deviceToken
{
NSLog(@"我的設備ID: %@", deviceToken);
}
-(void)application:(UIApplication*)application :(NSError*)error
{
NSLog(@"注冊失敗,無法獲取設備ID, 具體錯誤: %@", error);
}
3.連接設備,運行一次程序,獲得deviceToken號碼,應該是64個16進制的數,記下來。
4.啟動方式和調用方法
程序開啟 --> 前台運行-->notification --> didReceiveRemoteNotification
不更改Application的badge Number
程序開啟 --> 後台運行 -->notification --> App出提示,並更改application的badge Number --> 點應用程序圖標 --> applicationDidBecomeActive
程序開啟 --> 後台運行 -->notification --> App出提示,並更改application的badge Number --> 點上面出現的提示,或者下拉菜單提示,或者點擊alert框的確定--> didReceiveRemoteNotification --> applicationDidBecomeActive

程序關閉 -->notification --> App出提示,並更改application的badge Number --> 點上面出現的提示,或者下拉菜單提示,或者點擊alert框的確定--> didFinishLaunchingWithOptions --> applicationDidBecomeActive
可以在didFinishLaunchingWithOptions中判斷是否是apns來啟動的

[cpp] view plain print?
NSDictionary* pushInfo = [launchOptions objectForKey:@""];
//獲取推送詳情
NSString *pushInfo = [[NSString stringWithFormat:@"%@",[pushInfo objectForKey:@"aps"]];

在程序中如果要根據apns信息來做修改,就需要注意這樣的流程,每個啟動方式所調用的方法是不同的。
三.伺服器端開發
伺服器端 java第三方開發
https://github.com/notnoop/java-apns
四.注意事項
1.proction和developer的token是不一樣的,需要用ad hoc來beta測試下
2.要將token上傳給伺服器,伺服器要用,此外蘋果也不能保證token會保證不變,所以最好將保留過長的token刪除再同步次伺服器。
3.發布前要將push地址改掉
測試用:gateway.sandbox.push.apple.com 2195
發布用:gateway.push.apple.com 2195
4.不要迷信APNS,蘋果不是快遞公司保證每個用戶簽收。
5.接受2196的埠是蘋果每次push後會記錄下用戶收到狀況,如果用戶已經沒有安裝這個應用了,則會在伺服器保留信息,等服務端訪問2196埠,會將這些設備TOKEN傳送過來,這樣服務端可以將這些設備給disable掉

閱讀全文

與phpiosbadge相關的資料

熱點內容
pubg用什麼伺服器 瀏覽:524
田漢pdf 瀏覽:661
記錄儀如何安裝安卓系統 瀏覽:594
python求灰度均值 瀏覽:756
c編譯器是系統軟體嗎 瀏覽:694
獲取伺服器內網地址 瀏覽:536
新手媽媽如何帶新生兒APP 瀏覽:157
java日程管理 瀏覽:376
高清視頻鏈接加密 瀏覽:407
新買的阿里雲伺服器怎麼配置 瀏覽:612
在線編譯器為什麼刷新還在 瀏覽:211
雲伺服器系統盤可以裝資料庫 瀏覽:906
php繪制圖形 瀏覽:587
支付伺服器異常怎麼辦 瀏覽:76
java撥號 瀏覽:866
er5200如何設置虛擬伺服器 瀏覽:571
網路中心伺服器叫什麼 瀏覽:458
isplay單片機下載器 瀏覽:480
怎麼查看伺服器地址和埠 瀏覽:186
加密朋克ai 瀏覽:157