Xperia Z2平板电脑ACTION_IMAGE_CAPTURE

时间:2014-06-19 23:24:28

标签: android android-intent camera sony sony-xperia

我是一名Android开发人员,试图让我们的应用在Xperia Z2平板电脑上运行。

我们的应用程序具有允许用户使用“相机”拍摄照片的功能。在Android设备上默认提供的应用程序。功能正常,除了我们拍照后,“相机”应用程序不允许用户在返回我们的应用程序之前预览图片。 我们拍摄照片后立即回到我们的应用程序

我们注意到Sony Xperia Z2' Camera'应用程序将“预览”时间设置为“无限制”,“5秒”,“3秒”,“编辑”或“关闭”。从我们的应用程序打开“相机”应用程序时,似乎无法访问此设置。

我们是否允许用户访问此预览设置,或者至少以编程方式在我们的应用中设置“相机”应用的预览时间?

以下是我们用于打开“相机”的代码。应用

    // Camera.
    final List<Intent> cameraIntents = new ArrayList<Intent>();
    final Intent captureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    final PackageManager packageManager = mActivity.getPackageManager();
    final List<ResolveInfo> listCam = packageManager.queryIntentActivities(captureIntent, 0);
    for(ResolveInfo res : listCam) {
        final String packageName = res.activityInfo.packageName;
        final Intent intent = new Intent(captureIntent);
        intent.setComponent(new ComponentName(res.activityInfo.packageName, res.activityInfo.name));
        intent.setPackage(packageName);
        intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f));
        cameraIntents.add(intent);
    }
    // Filesystem.
    final Intent galleryIntent = new Intent();
    galleryIntent.setType("image/*");
    galleryIntent.setAction(Intent.ACTION_GET_CONTENT);

    // Chooser of filesystem options.
    final Intent chooserIntent = Intent.createChooser(galleryIntent, "Select Source");

    // Add the camera options.
    chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, cameraIntents.toArray(new Parcelable[]{}));

    mActivity.startActivityForResult(chooserIntent, PHOTO_REQUEST_CODE);

其他信息: 该应用程序无法供公众使用。它将在公司内部使用。因此,我们可以控制应用程序将安装在哪个平板电脑上。请尽量使用仅适用于Sony Xperia平板电脑的解决方案。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

不幸的是,预览时间设置功能在公共API中不可用。

一种可能的解决方案是在应用中显示预览图像。不应该太难实施。