UIQ で SMS/MMS を読むには?
1 に答える
アプリケーションが SMS/MMS を受信し、受信したメッセージの内容を読み取れるようにする C++ ソース コードの記述方法に関する情報が必要であると仮定します。
Symbian OS では、メッセージ ストアに SMS、MMS、EMAIL などを保存できます。
メッセージストアの API は汎用です。
メッセージ ストアとの間でデータの書き込みと読み取りを行うには、TMsvId、CMsvSession、CClientMtmRegistry、TMsvEntry、および CMsvEntry のクラスに慣れる必要があります。
私は明らかに偏っていますが、 http: //www.quickrecipesonsymbianos.com のメッセージングの章を読んで、メッセージング ストアの仕組みとそれを簡単に使用するためのサンプル コードを理解することをお勧めします。
一方、メッセージの受信はより複雑です。
SMS のリッスンと受信は、汎用ネットワーク API を使用して行われます。それが RSocketServ と RSocket です。ほとんどの場合、ソケットで適切な IOCTL パラメータを使用する必要があります。
アプリケーション向けの SMS のみを受信するために、特定のポートを指定できます。すべての SMS を受信しようとすると、ネイティブ メッセージ ビューア エンジンと組み込みの Java 仮想マシン PushRegistry モジュールの両方が既にすべての SMS をリッスンしている可能性があるため、問題になる可能性があります。
SDK の次のヘッダー ファイルには、便利なクラスと定数が含まれています。
TSmsAddr、KSMSDatagramProtocol、KSMSAddrFamily、TSmsUserDataSettings、CSmsBufferBase、CSmsPDU、RSmsSocketReadStream、RSmsSocketWriteStream、および CSmsMessage が特に重要です。SMS の非同期受信は、実際には RSocket.Ioctl() を使用して行われます。
名前が「KSmsErr」で始まる SMS 固有のエラー コードがあります。
UIQ での MMS の受信は、UQI 固有の API を介して行われます。Series60 フォンには見られないものです。これが、文献で Symbian ジェネリック MMS API に関する話題があまり見られない理由です。より詳細な質問がある場合は、UIQ または Sony-Ericsson の開発コミュニティに直接アクセスすることをお勧めします。
アプリケーションで MMS を受信するために RSocket を使用する必要はありません。
繰り返しになりますが、Embedded Java 仮想マシンの PushRegistry モジュールとネイティブ メッセージ ビューア アプリケーション エンジンの両方が、おそらくすべての受信 MMS メッセージを既にリッスンしています。
興味深いヘッダー ファイルは、mmsclient.h、MmsSettingsStore.h、mmsentry.h、MmsApiExtensions.h です。
特に興味深いのは、CMmsClientMtm、MmsApiExtensions、MMsvSessionObserver、および MMMSMessageHandler です。
幸運を。