【发布时间】:2017-03-02 09:14:32
【问题描述】:
我正在开发 Android 应用程序,在该应用程序中我需要使用意图发送带有图像的短信,但我收到异常 ActivityNotFoundException。在所有设备中都可以正常工作,但在带有棉花糖版本的三星设备中无法正常工作。 这是我的代码。
Intent sendIntent = new Intent("android.intent.action.SEND");
sendIntent.setClassName("com.android.mms","com.android.mms.ui.ComposeMessageActivity");
sendIntent.putExtra("sms_body", "Miimoji sent from your friend");
sendIntent.putExtra("android.intent.extra.STREAM", Uri.parse("file://" + fileName));
sendIntent.setType("vnd.android-dir/mms-sms");
startActivity(sendIntent);
这是错误报告。
02-17 02:32:55.332:E/AndroidRuntime(11322):致命异常:主要 02-17 02:32:55.332: E/AndroidRuntime(11322): java.lang.RuntimeException: 无法启动活动 ComponentInfo{com.example.shareviamms/com.example.shareviamms.MainActivity}: android.content.ActivityNotFoundException: 无法查找显式活动类 {com.android.mms/com.android.mms.ui.ComposeMessageActivity};您是否在 AndroidManifest.xml 中声明了此活动? 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2187) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2237) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.ActivityThread.access$600(ActivityThread.java:146) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1239) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.os.Handler.dispatchMessage(Handler.java:99) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.os.Looper.loop(Looper.java:137) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.ActivityThread.main(ActivityThread.java:5085) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 java.lang.reflect.Method.invokeNative(Native Method) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 java.lang.reflect.Method.invoke(Method.java:511) 02-17 02:32:55.332: E/AndroidRuntime(11322): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 02-17 02:32:55.332: E/AndroidRuntime(11322): at dalvik.system.NativeStart.main(Native Method) 02-17 02:32:55.332:E/AndroidRuntime(11322):原因:android.content.ActivityNotFoundException:找不到显式活动类 {com.android.mms/com.android.mms.ui.ComposeMessageActivity};您是否在 AndroidManifest.xml 中声明了此活动? 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1618) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Instrumentation.execStartActivity(Instrumentation.java:1417) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Activity.startActivityForResult(Activity.java:3370) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Activity.startActivityForResult(Activity.java:3331) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Activity.startActivity(Activity.java:3566) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Activity.startActivity(Activity.java:3534) 02-17 02:32:55.332: E/AndroidRuntime(11322): at com.example.shareviamms.MainActivity.onCreate(MainActivity.java:20) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Activity.performCreate(Activity.java:5104) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080) 02-17 02:32:55.332: E/AndroidRuntime(11322): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2151) 02-17 02:32:55.332: E/AndroidRuntime(11322): ... 11 更多
【问题讨论】:
-
不要指定类名。正如您在此处看到的那样,无法保证
Activity- 甚至该软件包 - 会出现在任何给定的设备上。
标签: android