无法从Android中的drawable文件夹使用ShareIntent发送图像文件?

我想使用意图分享图像,我使用了Dixit patel的答案代码。

public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Intent share = new Intent(Intent.ACTION_SEND); share.setType("image/png"); File.separator + "icon_ask_fatwa_one.png"); Uri imageUri = Uri.parse("android.resource://"+getPackageName()+"/"+"drawable/icon_ask_fatwa_one"); Log.i("imageUri",""+imageUri); share.putExtra(Intent.EXTRA_STREAM,imageUri); startActivity(Intent.createChooser(share, "Share Image")); }} 

我试图在模拟器中运行此代码时遇到以下错误:

01-25 11:50:57.697:E / AndroidRuntime(265):FATAL EXCEPTION:main 01-25 11:50:57.697:E / AndroidRuntime(265):java.lang.RuntimeException:无法启动活动ComponentInfo {com。 android.mms / com.android.mms.ui.ComposeMessageActivity}:java.lang.NullPointerException 01-25 11:50:57.697:E / AndroidRuntime(265):at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1736 )01-25 11:50:57.697:E / AndroidRuntime(265):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1752)01-25 11:50:57.697:E / AndroidRuntime(265):at android .app.ActivityThread.access $ 1500(ActivityThread.java:123)01-25 11:50:57.697:E / AndroidRuntime(265):在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:993)01-25 11:50:57.697:E / AndroidRuntime(265):在android.os.Handler.dispatchMessage(Handler.java:99)01-25 11:50:57.697:E / AndroidRuntime(265):在android.os.Looper .loop(Looper.java:126)01-25 11:50:57.697:E / AndroidRuntime(265):在android.app.ActivityThread.main(Activit yThread.java:3997)01-25 11:50:57.697:E / AndroidRuntime(265):at java.lang.reflect.Method.invokeNative(Native Method)01-25 11:50:57.697:E / AndroidRuntime(265 ):at java.lang.reflect.Method.invoke(Method.java:491)01-25 11:50:57.697:E / AndroidRuntime(265):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run( ZygoteInit.java:841)01-25 11:50:57.697:E / AndroidRuntime(265):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)01-25 11:50:57.697: E / AndroidRuntime(265):at dalvik.system.NativeStart.main(Native Method)01-25 11:50:57.697:E / AndroidRuntime(265):引起:java.lang.NullPointerException 01-25 11:50: 57.697:E / AndroidRuntime(265):at com.android.mms.ui.UriImage。(UriImage.java:68)01-25 11:50:57.697:E / AndroidRuntime(265):at com.android.mms。 model.ImageModel.initModelFromUri(ImageModel.java:82)01-25 11:50:57.697:E / AndroidRuntime(265):at com.android.mms.model.ImageModel。(ImageModel.java:64)01-25 11 :50:57.697:E / AndroidRuntime(265):在com.android.mms.data.W orkingMessage.changeMedia(WorkingMessage.java:462)01-25 11:50:57.697:E / AndroidRuntime(265):at com.android.mms.data.WorkingMessage.setAttachment(WorkingMessage.java:363)01-25 11: 50:57.697:E / AndroidRuntime(265):at com.android.mms.ui.ComposeMessageActivity.addImage(ComposeMessageActivity.java:2747)01-25 11:50:57.697:E / AndroidRuntime(265):at com.android .mms.ui.ComposeMessageActivity.addAttachment(ComposeMessageActivity.java:2883)01-25 11:50:57.697:E / AndroidRuntime(265):at com.android.mms.ui.ComposeMessageActivity.handleSendIntent(ComposeMessageActivity.java:2812) 01-25 11:50:57.697:E / AndroidRuntime(265):at com.android.mms.ui.ComposeMessageActivity.initialize(ComposeMessageActivity.java:1776)01-25 11:50:57.697:E / AndroidRuntime(265) :at com.android.mms.ui.ComposeMessageActivity.onCreate(ComposeMessageActivity.java:1704)01-25 11:50:57.697:E / AndroidRuntime(265):at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048 )01-25 11:50:57.697:E / AndroidRuntime (265):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1700)01-25 11:50:57.697:E / AndroidRuntime(265):… 11更多

有人可以使用正确的代码吗? 添加了MANIFEST.xml

              

使用此代码(我已编辑您的代码):

 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Intent share = new Intent(Intent.ACTION_SEND); share.setType("image/png"); Uri imageUri = Uri.parse("android.resource://com.example.mm/drawable/ic_launcher"); Log.i("imageUri",""+imageUri); share.putExtra(Intent.EXTRA_STREAM,imageUri); startActivity(Intent.createChooser(share, "Share Image")); } } 

在此处输入图像描述