web-dev-qa-db-ja.com

AndroidのSMSストレージにアクセスするには?

初心者Android開発者はこちら。

デバイスに保存されているSMSメッセージを読み取り、その習慣に関するユーザー統計(頻繁にメッセージを送信するユーザー、一般的な単語など)を提供するアプリを作成しようとしています。

しかし、私の知る限り、これを行う方法はないようです。私はフォーラムを見回しましたが、ほとんどの人は、受信トレイにアクセスして、ユーザーが読んでいないメッセージを見つけることができます。デフォルトのアプリとサードパーティ(たとえば、Handcent)は同じテキストをどのように表示できますか? Handcentは新規インストール時にすべてのテキストを表示するため、独自のデータベースを保持しません。

tl; dr:SMSデバイス上のAndroidメッセージ、特に以前に読んだことがあるメッセージを読むにはどうすればよいですか。

33
eternalmatt

SMS/MMSデータベースへのアクセスの具体例については、 gTalkSMS をご覧ください。

SmsManagerクラスを呼び出す必要があります。おそらくSTATUS_ON_ICC_READ定数を使用し、取得したものをアプリのローカルデータベースに配置して、既に読んだものとアプリが解析する新しいものを追跡できるようにする必要があります。ただし、マニフェストでクラスの使用を宣言する必要があるため、ユーザーは、インストール時に取得するアクセス許可ダイアログでSMSが呼び出される)にアクセスできることがわかります。 SMSアクセスは異常であり、一部のユーザーを先送りする可能性があります。幸運を祈ります。

Sms Managerで詳細に表示されるリンク

2
cigloo