No Activity found to handle Intent解决方法

本文解决了Android开发中使用相机裁剪图片时出现的ActivityNotFoundException问题。错误在于修改了图片文件的后缀名,导致系统无法正确识别。解决方法是确保文件后缀名为标准图片格式(如.jpg或.png)。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

出现的错误

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.android.camera.action.CROP dat=content: flg=0x3 (has extras) }

下面是我的代码(跳转编辑图片)

//编辑图片
        Intent editPho = new Intent("com.android.camera.action.CROP");
        editPho.setType("image/*");
//        Uri imageUri = FileProvider.getUriForFile(CPicActivity.this,
//                "hello.world.button.fileprovider",
//                new File(newFilePath));
        Uri imageUri = FileProvider.getUriForFile(CPicActivity.this,
                "hello.world.button.fileprovider",
                new File(newFilePath));
        //通过FileProvider创建一个content类型的Uri
        editPho.setData(imageUri);
        editPho.putExtra("crop", "true");//选择剪切
        editPho.putExtra("scale", false);//不按比例
        editPho.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, imageUri);//不能设置其他uri,来什么,输出什么
        editPho.putExtra("outputFormat",
                Bitmap.CompressFormat.JPEG.toString());
        editPho.putExtra("noFaceDetection", false); // 打开人脸检测
        editPho.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);//允许读写
        editPho.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
        //不指定apk打开
        startActivityForResult(editPho, EDIT_PHOTO);

网上找到的很多资料都是安卓基础的activity间跳转,没找到解决方法

最后发现问题所在,我这里的newFilePath的文件确实是图片文件,可是我自己改了后缀名,系统就不认了,
解决方法:
后缀名改回去(jpg,png这些图片后缀名)

假如想不让系统图库找到图片的话就前面加个”.”

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值