2010-11-24 7 views
6

私の意図に関する問題があります。インテントを選択すると、アプリがクラッシュするようです。私はスタックトレースのためにエラーコード行を発見しました。しかし、私はそれで間違って何かを見つけることができませんでした。誰もがこれで私を助けることを願っています。アクティビティが意図を処理できない

これは、ライン121内のJavaコードである:
startActivity(新しいインテント(Intent.ACTION_INSERT、getIntent()のgetData()));

11-24 16:09:24.634: ERROR/AndroidRuntime(222): Uncaught handler: thread main exiting due to uncaught exception 
11-24 16:09:24.834: ERROR/AndroidRuntime(222): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.INSERT dat=content://joel.google.provider.TemplatePad/templates } 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1408) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1378) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.app.Activity.startActivityForResult(Activity.java:2749) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.app.Activity.startActivity(Activity.java:2855) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at joel.AndroidGroupSMS.TemplatesList.onOptionsItemSelected(TemplatesList.java:121) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.app.Activity.onMenuItemSelected(Activity.java:2170) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:730) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:139) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:855) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.view.menu.IconMenuView.invokeItem(IconMenuView.java:525) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.view.menu.IconMenuItemView.performClick(IconMenuItemView.java:122) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.view.View.onTouchEvent(View.java:4179) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.widget.TextView.onTouchEvent(TextView.java:6541) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.view.View.dispatchTouchEvent(View.java:3709) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1643) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.view.ViewRoot.handleMessage(ViewRoot.java:1691) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.os.Handler.dispatchMessage(Handler.java:99) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.os.Looper.loop(Looper.java:123) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at android.app.ActivityThread.main(ActivityThread.java:4363) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at java.lang.reflect.Method.invokeNative(Native Method) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at java.lang.reflect.Method.invoke(Method.java:521) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 
11-24 16:09:24.834: ERROR/AndroidRuntime(222):  at dalvik.system.NativeStart.main(Native Method) 

答えて

1

あなたのimplicit intentと一致することを望んでいるインテントフィルタを表示できますか?この部分:

act=android.intent.action.INSERT dat=content://joel.google.provider.TemplatePad/templates

あなたはcontent://joel.google.provider.TemplatePad -schemedのURIにINSERTアクションの暗黙の要求を処理するように設定intent filterでの活動を持っている必要がありますを意味します。

+0

+0

コメント全体にする必要があります。あなたが話している以上。 –

+0

vnd.google.noteを選択するためのMIMEタイプが必要ですか?それはGoogleのメモ帳の例からコピーされ貼り付けられているようです。さらに、 'content:// joel.google.provider.TemplatePad/templates' URIと一致させるために使用しているコンテンツプロバイダマニフェスト要素は何ですか? –

0

はあなたのマニフェストにActivityを追加しました:

これは、スタックトレースのですか?

また、StartActivity()へのお電話はお勧めです。ここでは、私は新しいActivity

Intent i = new Intent(this, NextActivity.class); 
startActivity(i); 

編集を起動するに精通しています方法です:それはあなたがおそらく明示的Activityを起動するの難しさを持っていなかった私の注意に来ています。ごめんなさい!

+0

私は同じ問題を抱えていました – Albinoswordfish

+1

あなたの例は明示的な意図です(「開始アクティビティX」)。暗黙のインテントを作成しています(「この一連のデータを処理するアクティビティを開始してください」)。彼が実際にやろうとしているのは、特定の種類のデータに対する内部要求または外部要求を処理するためのコードをいくつか設定しているところです。 –

+0

ああ、私の間違いですが、Implicit Intentsでまだ作業する必要はありませんでした。現在のニーズに合っているかどうかを確認してください。 – Thomas

関連する問題