Android R - 通过startActivity的ACTION_IMAGE_CAPTURE显示不同的选择选项
创始人
2024-08-15 04:30:05
0

要通过startActivity的ACTION_IMAGE_CAPTURE显示不同的选择选项,可以使用Intent.createChooser()方法。以下是一个示例代码:

// 创建启动相机的Intent
Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

// 检查设备是否有相机应用
if (cameraIntent.resolveActivity(getPackageManager()) != null) {
    // 创建一个包含相机Intent的Intent选择器
    Intent chooser = Intent.createChooser(cameraIntent, "选择相机应用");

    // 添加额外的相机应用Intent到选择器中
    List cameraApps = getPackageManager().queryIntentActivities(cameraIntent, 0);
    for (ResolveInfo app : cameraApps) {
        String packageName = app.activityInfo.packageName;
        Intent intent = new Intent(cameraIntent);
        intent.setComponent(new ComponentName(app.activityInfo.packageName, app.activityInfo.name));
        intent.setPackage(packageName);
        chooser.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[]{intent});
    }

    // 启动选择器
    startActivityForResult(chooser, REQUEST_IMAGE_CAPTURE);
}

在这个示例中,首先创建一个启动相机的Intent对象。然后使用resolveActivity()方法检查设备是否有相机应用。如果有相机应用,就创建一个Intent选择器,并设置选择器的标题为"选择相机应用"。

接下来,使用queryIntentActivities()方法获取所有相机应用的ResolveInfo对象。然后遍历这些ResolveInfo对象,为每个相机应用创建一个新的Intent,并将其添加到选择器中。

最后,使用startActivityForResult()方法启动选择器,并传递一个请求码(REQUEST_IMAGE_CAPTURE)来处理结果。

相关内容

热门资讯

透视透视挂!wpk透视外挂,(... 透视透视挂!wpk透视外挂,(wpK)一直真的是有挂,黑科技实锤(有挂透视)-哔哩哔哩;运wpk透视...
黑科技透视!(WePoKe)原... 黑科技透视!(WePoKe)原先是真的有挂,(wePokE)原来存在有挂,黑科技针对(真是有挂)-哔...
十分钟黑科技!德扑之星记牌器,... 十分钟黑科技!德扑之星记牌器,(德扑之星)往昔是有挂,科技教程(有挂教程)-哔哩哔哩;该软件可以轻松...
透视美元局(AAPOKer)透... 透视美元局(AAPOKer)透视辅助脚本(透视)好像存在有挂(有挂详情)-哔哩哔哩1、ai辅助优化,...
第四分钟辅助挂!微扑克ai辅助... 第四分钟辅助挂!微扑克ai辅助透明挂,(微扑克)都是有挂,是真的有挂(有挂猫腻)-哔哩哔哩1、不需要...
黑科技代打!(WePoKe)从... 黑科技代打!(WePoKe)从来真的有挂,(WEPOke)原来存在有挂,黑科技大厅房(揭秘有挂)-哔...
黑科技辅助!(WePoKe)一... 黑科技辅助!(WePoKe)一贯是有挂,(wepoKe)原来真的有挂,黑科技辅助(有挂秘诀)-哔哩哔...
黑科技有挂!(WePoKe)真... 黑科技有挂!(WePoKe)真是有挂,(WEpoke)原来存在有挂,黑科技苹果版(有挂工具)-哔哩哔...
透视科技(AaPOKER)透视... 透视科技(AaPOKER)透视辅助插件(透视)本来是真的有挂(讲解有挂)-哔哩哔哩1、这是跨平台的黑...
透视安装(aapoKer)透视... 透视安装(aapoKer)透视辅助脚本(透视)最初是有挂(有挂分析)-哔哩哔哩1、很好的工具软件,可...