2010-12-29 6 views
2

AndroidのアプリケーションでSMSメッセージを送信すると、メッセージが送信されたことを内蔵のメッセージングアプリが認識して適切なスレッドに表示できるのですか?Androidのメッセージングアプリで他のアプリから送信されたメッセージを認識させる

現在のところ、私のアプリがメッセージを送信したときに、送信されたレコードがありません。私は、メッセージが電話から送信された他のメッセージのように表示されるようにしたいと思います。私は手動でSMSデータベースにメッセージを追加するより簡単な何かを期待しています。

答えて

2

メッセージが送信されたことを内蔵のメッセージングアプリケーションが認識して適切なスレッドで表示できるようにすることは可能ですか?

Androidには「組み込みメッセージングアプリ」はありません。 SMS機能を持つ各デバイスはSMSクライアントを持っていますが、Androidオープンソースプロジェクトの一部であるメッセージングアプリを使用するのは一部の人だけです。他は独自のものを使用しています。

に関係なく、送信したメッセージのみを表示します。 「送信された」メッセージと「適切なスレッド」という概念は、クライアントの概念であり、オペレーティングシステムの概念ではありません。

私は、手動でSMSデータベースにメッセージを追加するよりも簡単なことを望んでいます。

Androidには「smsデータベース」はありません。おそらく、メッセージングアプリケーションからコンテンツプロバイダを考えているでしょう。繰り返しますが、メッセージングアプリはアプリであり、オペレーティングシステムの機能ではなく、そのアプリがすべての端末にあるわけではありません。メッセージングアプリケーションの「SMSデータベース」は、文書化されていないか、またはサポートされていません。逆の場合は、Google specifically states that it is not for your useです。

+0

申し訳ありません。すべての用語がダウンしているわけではありませんが、基本的には、メッセージが送信されたことをユーザーに明確に伝えたいだけです。これを行う適切な方法はありますか? – Dan

+1

確かに、自分のアプリケーションには必要だが、ユーザーに通知することができます。乾杯や何かを使う。しかし、他のアプリケーションに誰かに何かを通知させることはできません。 – Falmarri

+0

しかし、これはHandcent SMSやGo SMS Pro(Android Marketによると5-10Mと0.5-1Mのインストール)のようなアプリがやっていることです。だから君はそれをしてはならないが、できる。 –

6

次のコードを使用して、Messagingアプリケーションと同じフォルダに格納できます。

 ContentValues values = new ContentValues(); 
     values.put("address", phoneNumber); 
     values.put("body", smsText); 
     // Note: This uses an Android internal API to save to Sent-folder 
     context.getContentResolver().insert(Uri.parse("content://sms/sent"), values); 

これは、いくつかの内部APIを使用しており、将来のリリースでは、ブレーキは/一部の携帯電話では動作しないかもしれませんが、私は私のコメントで述べたようにインストールの何百万人といくつかのアプリは、似た何かをやっています。

関連する問題