Android 6.0 Instagram图像共享使用意图不起作用

时间:2015-11-15 15:12:16

标签: java android android-intent instagram

我有这个代码在其他版本的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);
        }

    }

3 个答案:

答案 0 :(得分:1)

正如Amir建议的那样,您需要为每个功能允许每个应用的权限。步骤:Android设置 - >应用 - >选择应用 - >权限 - >允许您要共享的所有权限。

答案 1 :(得分:1)

这是因为Instagram的权限。您必须允许存储: Android设置 - >应用 - > Instagram - >权限

答案 2 :(得分:0)

可能是因为android权限。他们在android 6中有一些变化。检查this link以了解。转到设备设置>应用并选择您的应用,然后手动接受权限并检查问题是否已解决。