2

Bluetooth接続を使用して、コンピューターからAndroidフォンを介してSMSを送信するアプリを実行しています。Androidフォンを使用して、次のコードでSMSを送信します。

SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNum, null, MessageText, null, null);

通知はまだ気にしません。ただし、アプリを使用して SMS を送信すると、携帯電話の基本的なメッセージ サービスに戻ったときにそれを確認できるようにしたいと考えています。しかし、ここではそうではありません。

アイデアはありますか?

4

2 に答える 2

2

コンテンツ プロバイダーにエントリを追加する必要があります。SMS の送信に成功すると、次のようになります。

ContentValues values = new ContentValues();
            values.put("address", mPhoneNumber);
            values.put("body",message);
            getContentResolver().insert(Uri.parse("content://sms/sent"), values);
于 2013-07-19T18:42:37.193 に答える
2

SMSManager を介した送信と SMS では、テキストが他のテキスト メッセージ アプリに追加されることはありません。2 つのオプションがあります。

1) インテントを使用した「正しい」Android の方法 (これにより、ユーザーはアプリから抜け出します)

Intent sendSMS = new Intent(Intent.ACTION_VIEW);
sendSMS.setType("vnd.android-dir/mms-sms");
sendSMS.putExtra("address", "5558675309");
sendSMS.putExtra("sms_body","Your message here");
startActivity(sendSMS);

2)ここではほとんどの場合うまくいくと思われる、文書化されていない方法(マイレージは異なる場合があります)。

// code shamelessly copied from link above
Context context; //you should initialize it somewhere
...
ContentValues values = new ContentValues();
values.put("address", number);
values.put("body", message );
values.put("date", time );
context.getContentResolver().insert(Uri.parse("content://sms/sent"), values);
于 2013-07-19T18:28:16.127 に答える