8

私は「INTERSTIZIO」という名前のiPhoneアプリに取り組んでいます。これには、ユーザー間のチャットなどの機能が実装されています。このユーザーでは、テキスト、場所、および絵文字記号を含むテキストを送信できます。アプリが受信側でオープンモードでない場合は、バックエンドからプッシュが生成され、受信者に表示されます。「UserName : Hello...」のようなメッセージをプッシュで表示できますが、プッシュ メッセージで「UserName : Hay :)」のような絵文字記号も表示したいので、誰もがアイデアを持っていますアップルの絵文字コード(スマイルアップルコードのように\u263a)を使用して、このタイプのプッシュメッセージをどのように実現できますか?

http://code.iamcal.com/php/emoji/のリンクにある解決策に従いました が、関数に渡したのと同じコードが返されます。Web ページでは正常に動作しますが、プッシュ メッセージでは動作しません。

ここでは、プッシュのスクリーン ショットを 1 つ添付します。最後に、スマイリーと照明のシンボルが表示されていますが、以下の PHP スクリプトのコードのような HTML でサポートされているコードを使用して表示されていることがわかります。

$lightning = html_entity_decode('',ENT_NOQUOTES,'UTF-8');  
//add this to the 'alert' portion of your APNS payload:  
$message = "You just got the {$lightning}SHOCKER{$lightning}!";

しかし、私の場合、アップルの組み込みの絵文字キーボードを表示し、以下のコードを使用して絵文字コードを取得できます。

//store code of emojis at backend  
NSData *data = [txtspeech.text dataUsingEncoding:NSNonLossyASCIIStringEncoding];  
NSString *valueUnicode = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

//Display emojis in mobile chat window
NSData *data = [objchat.strchat dataUsingEncoding:NSUTF8StringEncoding];  
NSString *valueEmoj = [[NSString alloc] initWithData:data encoding:NSNonLossyASCIIStringEncoding];  
cell.txtchat.text=valueEmoj;

上記のコードを使用すると、絵文字をチャット ウィンドウに保存して表示できますが、受信者のユーザーがアプリを閉じた場合、プッシュ メッセージで絵文字記号を表示できません。

ありがとう

ここに画像の説明を入力

4

2 に答える 2

1

グーグルのために。json_encode() は double \ を追加します

$message = "\ue04a";
$body['aps'] = array(
                   'alert' => $message,
                   'sound' => 'default',
                   'type'  => $type,
                   'param' => $param
               );

$payload = json_encode($body);
$payload = str_replace("\", "\\", $payload);
于 2016-02-04T10:27:07.627 に答える