使用自定义的意图投掷活动启动活动未发现异常自定义、意图、异常、发现

2023-09-12 22:21:36 作者:銩るdè心喓怎庅収佪

我使用的是下面的code启动活动形成我的应用程序:

I am using the below code to launch the activity form my application:

Intent intent = new Intent();
intent.setAction("com.android.excample.cutstom_action");
intent.setData(data); //public Uri data
intent.putExtra(Intent.Extra_stream, stream); // public Uri stream
startActivity(intent);

而在其他应用程序中的活动清单文件中定义如下:

And in the other application the activity is defined in manifest file as follow:

<activity android:name="MyActivity">
<intent-filter>
<action android:name="com.android.excample.cutstom_action"/>
<category android:name = "android.intent.category.DEFAULT"/>
<data android:mimeType="*/*"/>
</intent-filter>
</activity>

但是当我尝试启动活动我收到活动未发现异常。 请帮我解决这个问题。

but when i try to start the activity i am getting activity not found exception. please help me to solve this issue

崩溃日志如下: 03-04 20:03:53.351:E / AndroidRuntime(22633):致命异常:主要 03-04 20:03:53.351:E / AndroidRuntime(22633):java.lang.RuntimeException的:不提供结果ResultInfo {谁= NULL,请求= 1,结果= -1,数据=意向{DAT =内容:// com.android.contacts /数据/ 51826 FLG =为0x1}}到活动{com.example.test / com.example.test.ContentPickerTester}:android.content.ActivityNotFoundException:无活动处理意向{行动= com.android .excample.cutstom_action} 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.ActivityThread.deliverResults(ActivityThread.java:2983) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.ActivityThread.handleSendResult(ActivityThread.java:3026) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.ActivityThread.access $ 1100(ActivityThread.java:126) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1180) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.os.Handler.dispatchMessage(Handler.java:99) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.os.Looper.loop(Looper.java:137) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.ActivityThread.main(ActivityThread.java:4456) 03-04 20:03:53.351:E / AndroidRuntime(22633):在java.lang.reflect.Method.invokeNative(本机方法) 03-04 20:03:53.351:E / AndroidRuntime(22633):在java.lang.reflect.Method.invoke(Method.java:511) 03-04 20:03:53.351:E / AndroidRuntime(22633):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:787) 03-04 20:03:53.351:E / AndroidRuntime(22633):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554) 03-04 20:03:53.351:E / AndroidRuntime(22633):在dalvik.system.NativeStart.main(本机方法) 03-04 20:03:53.351:E / AndroidRuntime(22633):android.content.ActivityNotFoundException:产生的原因无活动处理意向{行为= com.android.excample.cutstom_action} 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1512) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.Instrumentation.execStartActivity(Instrumentation.java:1384) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.Activity.startActivityForResult(Activity.java:3190) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.Activity.startActivity(Activity.java:3297) 03-04 20:03:53.351:E / AndroidRuntime(22633):在com.example.test.ContentPickerTester.onActivityResult(ContentPickerTester.java:64) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.Activity.dispatchActivityResult(Activity.java:4649) 03-04 20:03:53.351:E / AndroidRuntime(22633):在android.app.ActivityThread.deliverResults(ActivityThread.java:2979)

the crash log is as follow: "03-04 20:03:53.351: E/AndroidRuntime(22633): FATAL EXCEPTION: main 03-04 20:03:53.351: E/AndroidRuntime(22633): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=Intent { dat=content://com.android.contacts/data/51826 flg=0x1 }} to activity {com.example.test/com.example.test.ContentPickerTester}: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.android.excample.cutstom_action } 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.ActivityThread.deliverResults(ActivityThread.java:2983) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3026) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.ActivityThread.access$1100(ActivityThread.java:126) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1180) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.os.Handler.dispatchMessage(Handler.java:99) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.os.Looper.loop(Looper.java:137) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.ActivityThread.main(ActivityThread.java:4456) 03-04 20:03:53.351: E/AndroidRuntime(22633): at java.lang.reflect.Method.invokeNative(Native Method) 03-04 20:03:53.351: E/AndroidRuntime(22633): at java.lang.reflect.Method.invoke(Method.java:511) 03-04 20:03:53.351: E/AndroidRuntime(22633): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:787) 03-04 20:03:53.351: E/AndroidRuntime(22633): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554) 03-04 20:03:53.351: E/AndroidRuntime(22633): at dalvik.system.NativeStart.main(Native Method) 03-04 20:03:53.351: E/AndroidRuntime(22633): Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.android.excample.cutstom_action } 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1512) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1384) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.Activity.startActivityForResult(Activity.java:3190) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.Activity.startActivity(Activity.java:3297) 03-04 20:03:53.351: E/AndroidRuntime(22633): at com.example.test.ContentPickerTester.onActivityResult(ContentPickerTester.java:64) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.Activity.dispatchActivityResult(Activity.java:4649) 03-04 20:03:53.351: E/AndroidRuntime(22633): at android.app.ActivityThread.deliverResults(ActivityThread.java:2979)"

推荐答案

设置。你的活动在manifast文件名前

set "." before the name of your activity in the manifast file

".MyActivity"

或者像这样完整的限定路径设置:

or set it with the full qualified path like so:

"com.android.excample.MyActivity"