6

新しい Droid RAZR ICS オペレーティング システムでは、SMS メッセージ インテントの開始 (事前入力されたテキストの作成) が機能しなくなりました。このタスクを達成する他の方法はありますか?

私は両方を試しました:

  Intent sendIntent = new Intent(Intent.ACTION_VIEW); 
    sendIntent.putExtra("sms_body", smsBody); 
    sendIntent.setType("vnd.android-dir/mms-sms"); 
    startActivity(sendIntent);

また、試した、

Uri.parse(uri);

テキスト メッセージの本文は事前入力されていませんが、私の知る限り、他のすべてのデバイスとオペレーティング システムでは正しく動作します。

4

2 に答える 2

1

私もこの問題に遭遇し、最終的に「sms_body」文字列は Android 4 では適用できなくなったと結論付けました。代わりに、より論理的な Intent.EXTRA_TEXT キーが使用されます。

    String text = "Hello world";
    i = new Intent(Intent.ACTION_VIEW);
    i.setData(Uri.parse("sms:"));
    // i.setType("vnd.android-dir/mms-sms");
    i.putExtra(Intent.EXTRA_TEXT, text);
    i.putExtra("sms_body", text);
    startActivity(i);

このコードは、Android 2.x と Android 4.0 の両方で動作するようですが、それをサポートするドキュメントは見つかりません。MIME タイプは残念ながら標準化されていないように見えるため、MIME タイプを使用するのではなく、"sms:" URI を使用することにしました。

于 2012-09-20T20:00:33.113 に答える
1

ACTION_SENDTOメッセージの送信先の電話番号に aを使用しsmsto: Uriます。

使用している MIME タイプは文書化されていないため、コア Android チームまたはデバイス メーカーによって自由に変更される可能性があります。

于 2012-07-06T18:17:10.720 に答える