我有这个代码在其他版本的android上工作正常但似乎在Android 6.0上行为不端。
没有错误,但图片未张贴。
public void onClick(View v) {
Intent intent = getPackageManager().getLaunchIntentForPackage("com.instagram.android");
if (intent != null)
{
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setPackage("com.instagram.android");
try {
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(MediaStore.Images.Media.insertImage(getContentResolver(), imagePath, "I am Happy", "Share happy !")));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
shareIntent.setType("image/jpeg");
startActivity(shareIntent);
}
else
{
// bring user to the market to download the app.
// or let them choose an app?
intent = new Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setData(Uri.parse("market://details?id="+"com.instagram.android"));
startActivity(intent);
}
}
答案 0 :(得分:1)
正如Amir建议的那样,您需要为每个功能允许每个应用的权限。步骤:Android设置 - >应用 - >选择应用 - >权限 - >允许您要共享的所有权限。
答案 1 :(得分:1)
这是因为Instagram的权限。您必须允许存储: Android设置 - >应用 - > Instagram - >权限
答案 2 :(得分:0)
可能是因为android权限。他们在android 6中有一些变化。检查this link以了解。转到设备设置>应用并选择您的应用,然后手动接受权限并检查问题是否已解决。