Android 从库中选择图像并设置为联系人照片时出错

Android 从库中选择图像并设置为联系人照片时出错,android,image,performance,android-intent,uiimageview,Android,Image,Performance,Android Intent,Uiimageview,当事件被单击时。打开联系人列表。当选择一个联系人时,选择其包含错误 启用以加载照片 这是我的ActivityResult方法 你应该改变这个 Bitmap icon= BitmapFactory.decodeResource(context.getResources(), R.id.photo); 到 您在这里出错了R.id.photo。您需要使用R.drawable.photo访问drawable 更新:试试这种方法 Context context= getApplicati

当事件被单击时。打开联系人列表。当选择一个联系人时,选择其包含错误

启用以加载照片

这是我的ActivityResult方法

你应该改变这个

  Bitmap icon= BitmapFactory.decodeResource(context.getResources(), R.id.photo);

您在这里出错了
R.id.photo
。您需要使用
R.drawable.photo
访问drawable

更新:试试这种方法

      Context context= getApplicationContext();
      Bitmap icon=    BitmapFactory.decodeResource(context.getResources(),
                R.drawable.photo);

     Intent myIntent = new Intent();             
     myIntent.setAction(Intent.ACTION_ATTACH_DATA); 
     myIntent.setType("image/jpeg"); 
     myIntent.putExtra(Intent.EXTRA_STREAM, icon);
     startActivity(myIntent); 
并加上

 <uses-permission android:name="android.permission.WRITE_CONTACTS" />
 <uses-permission android:name="android.permission.READ_CONTACTS" />


在您的
manifest.xml

中,只需使用此行更改您的行即可

Bitmap icon= BitmapFactory.decodeResource(context.getResources(), R.id.photo);


将此添加到您的意图代码中:

intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
startActivity(Intent.createChooser(intent, "Set as:"));

它包含相同的错误。“启用加载照片”抱歉,再次包含相同的错误。我没有附上联系照片。“”启用加载照片”“@Hiteshpatel只需在R.drawble.yourimage中写入图像的名称,它就会工作..它在我的代码中工作。当我选择“联系人”时,只会收到消息。“”启用加载照片“”请检查此链接。这是我的完整代码。我批准,因为在你的电话中它正在运行。
 <uses-permission android:name="android.permission.WRITE_CONTACTS" />
 <uses-permission android:name="android.permission.READ_CONTACTS" />
Bitmap icon= BitmapFactory.decodeResource(context.getResources(), R.id.photo);
Bitmap icon= BitmapFactory.decodeResource(context.getResources(), R.drawable.arrow1);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
startActivity(Intent.createChooser(intent, "Set as:"));