AndroidにSMSの意図を送信します
-
14-11-2019 - |
質問
String x="Hello World";
String y="You Rock!!!";
Intent sendIntent = new Intent(Intent.ACTION_VIEW);
sendIntent.putExtra("sms_body", x);
sendIntent.putExtra("sms_body", y);
sendIntent.setType("vnd.android-dir/mms-sms");
startActivity(sendIntent);
.
SMS経由で複数のメッセージ体を送信しようとしていますが、「ロック!!!」だけです。表示されています。私がやりたいことは、複数のメッセージを表示して(別の行に)事前にフォーマットされていることができます。 たとえば...
Hello World
You Rock!!!
. 解決
複数行メッセージを送信したい場合は、2つの文字列の間に改行を入れてください。
x + "\n" + y
.
複数のメッセージを送信したい場合は、それを行う方法はありません。[StartActivityForResult] [1]を使用することができます[OnActivityResult] [2]メソッド次のメッセージを送信できます。
[2]: > http://developer.android.com/reference/android/app./活動化。html#動度Result Result(、int、android.content.intent)
他のヒント
問題は、Putextraがバンドル引数内で書き込まれたすべてのもの(2番目のもの)のすべてのものを追加していないが、そのコンテンツをリセットしているので、 のオーバーライド>拡張データは拡張データです。それが最後の部分を見ることができます。
私はそれを試していませんが、あなたがこのようなことをするならば、それは機能することができます:
String smsBody="Hello World\nYou Rock!!!";
Intent sendIntent = new Intent(Intent.ACTION_VIEW);
sendIntent.putExtra("sms_body", smsBody);
sendIntent.setType("vnd.android-dir/mms-sms");
startActivity(sendIntent);
.
文字\ nは、改行(http://en.wikipedia.org/wiki/wiki/newline)特殊文字です。つまり、その文字列を2行に書き込んでいます(\ nは\ nは右に分割します)。\ nはほとんどすべての文字列表現に存在しているので、ここでも動作することができます。試してみてください。 ところでアドバイスと同じように、変数(xまたはyだけでなく)に理解できる名前を与えてみてください。コードを再利用したい場合やエラーが発生したい場合は、正確にxまたはyが何であるかを知りたいかもしれません。
ベストアンズ