あるアクティビティから別のアクティビティにデータを送信する必要がある Android プロジェクトを開発しています。しかし、あるアクティビティから別のアクティビティにデータを送信しているとき、あるアクティビティから別のアクティビティにデータを送信していません。
other からデータを受け取るコードの一部は次のとおりです。
Intent intent=getIntent();
String str,str1;
str=intent.getExtras().getString("phoneno");
Log.d("completre", "complete");
phonePhoneno.setText(str);
Log.d("complete","complete1");
if(intent.getExtras()==null) {
txtMessage.setText("u duffer write program properly");
} else {
str1=intent.getExtras().toString();
txtMessage.setText(str1);
Log.d("complete","complete2");
}
他のアクティビティからデータを送信するために使用しているコードの一部は次のとおりです。
if(v.getId()==R.id.main_act) {
String str=txtText.getText().toString();
Intent intent=new Intent(getApplicationContext(), MainActivity.class);
intent.putExtra("username",str);
intent.putExtra("phoneno", phoneno);
startActivity(intent);
}
ボタンをクリックしてデータを受信しようとすると、強制終了します。
このプロジェクトでは、電話番号を読んでいる最初の活動に2つの活動があります。ans は、将来のために保存するためだけに 2 番目のアクティビティに送信します。2番目のアクティビティには、音声認識システムによってテキストを追加する編集テキストがあり、その後、データ電話番号と編集テキストフィールドの両方を、2番目のアクティビティから1番目のアクティビティに、上記のボタンをクリックして送信しています(コードの2番目の部分) )。電話番号を送信していますが、テキストコンテンツを編集していません(推測)。完了ボタンをクリックすると(最初のアクティビティの両方のフィールドに入力します)、電話番号フィールドに電話番号を追加しますが、メッセージは追加しません。
アプリが閉じられなかったときの最新のログ猫
04-13 13:33:46.206: I/TextToSpeech(834): Sucessfully bound to com.svox.pico
04-13 13:33:46.206: W/TextToSpeech(834): speak failed: not bound to TTS engine
04-13 13:33:47.005: I/TextToSpeech(834): Connected to ComponentInfo{com.svox.pico/com.svox.pico.PicoService}
04-13 13:33:47.125: E/test(834): hhhhhhhhhhhhhhhhh
04-13 13:33:47.125: I/Choreographer(834): Skipped 174 frames! The application may be doing too much work on its main thread.
04-13 13:33:47.575: I/Choreographer(834): Skipped 69 frames! The application may be doing too much work on its main thread.
04-13 13:33:56.535: W/IInputConnectionWrapper(834): showStatusIcon on inactive InputConnection
04-13 13:33:56.535: I/Choreographer(834): Skipped 174 frames! The application may be doing too much work on its main thread.
04-13 13:33:56.975: D/dalvikvm(834): GC_CONCURRENT freed 127K, 9% free 3017K/3288K, paused 37ms+5ms, total 108ms
04-13 13:34:00.274: V/(834): Got a contact result: content://com.android.contacts/data/3
04-13 13:34:00.674: V/(834): Got phone no : (986) 743-561
04-13 13:34:00.914: I/Choreographer(834): Skipped 164 frames! The application may be doing too much work on its main thread.
04-13 13:34:01.244: I/Choreographer(834): Skipped 37 frames! The application may be doing too much work on its main thread.
04-13 13:34:05.494: I/Choreographer(834): Skipped 139 frames! The application may be doing too much work on its main thread.
04-13 13:34:05.974: I/Choreographer(834): Skipped 60 frames! The application may be doing too much work on its main thread.
04-13 13:34:12.965: I/TextToSpeech(834): Sucessfully bound to com.svox.pico
04-13 13:34:12.965: W/TextToSpeech(834): speak failed: not bound to TTS engine
04-13 13:34:13.065: I/TextToSpeech(834): Connected to ComponentInfo{com.svox.pico/com.svox.pico.PicoService}
04-13 13:34:13.155: E/test(834): hhhhhhhhhhhhhhhhh
04-13 13:34:13.155: I/Choreographer(834): Skipped 35 frames! The application may be doing too much work on its main thread.
04-13 13:34:14.425: I/Choreographer(834): Skipped 308 frames! The application may be doing too much work on its main thread.
04-13 13:34:15.235: I/Choreographer(834): Skipped 95 frames! The application may be doing too much work on its main thread.
04-13 13:34:16.265: I/Choreographer(834): Skipped 31 frames! The application may be doing too much work on its main thread.
04-13 13:34:20.025: D/completre(834): complete
04-13 13:34:20.035: D/AndroidRuntime(834): Shutting down VM
04-13 13:34:20.035: W/dalvikvm(834): threadid=1: thread exiting with uncaught exception (group=0x40a71930)
04-13 13:34:20.085: E/AndroidRuntime(834): FATAL EXCEPTION: main
04-13 13:34:20.085: E/AndroidRuntime(834): java.lang.NullPointerException
04-13 13:34:20.085: E/AndroidRuntime(834): at com.example.sms.MainActivity.onClick(MainActivity.java:322)
04-13 13:34:20.085: E/AndroidRuntime(834): at android.view.View.performClick(View.java:4204)
04-13 13:34:20.085: E/AndroidRuntime(834): at android.view.View$PerformClick.run(View.java:17355)
04-13 13:34:20.085: E/AndroidRuntime(834): at android.os.Handler.handleCallback(Handler.java:725)
04-13 13:34:20.085: E/AndroidRuntime(834): at android.os.Handler.dispatchMessage(Handler.java:92)
04-13 13:34:20.085: E/AndroidRuntime(834): at android.os.Looper.loop(Looper.java:137)
04-13 13:34:20.085: E/AndroidRuntime(834): at android.app.ActivityThread.main(ActivityThread.java:5041)
04-13 13:34:20.085: E/AndroidRuntime(834): at java.lang.reflect.Method.invokeNative(Native Method)
04-13 13:34:20.085: E/AndroidRuntime(834): at java.lang.reflect.Method.invoke(Method.java:511)
04-13 13:34:20.085: E/AndroidRuntime(834): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
04-13 13:34:20.085: E/AndroidRuntime(834): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
04-13 13:34:20.085: E/AndroidRuntime(834): at dalvik.system.NativeStart.main(Native Method)
ここでさらに言及したいのは、編集テキストのコンテンツを設定していないというメッセージを記録せずに 2 番目のアクティビティからメインに戻り、コンテンツの 2 番目の部分に示すように最初のアクティビティに送信しようとしたことです。機能したコード...理想的には、編集テキストにデータがないため、強制的に閉じる必要があります..その時点で強制的に閉じない理由がわかりませんでした。