-1

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

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

我们注意到索尼 Xperia Z2“相机”应用程序上有一个设置,可以将“预览”时间设置为“无限”、“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 平板电脑的解决方案。

感谢您的帮助。

4

1 回答 1

0

遗憾的是,公共 API 中不提供预览时间设置功能。

一种可能的解决方案是仅在您的应用程序中显示预览图像。实施起来应该不会太难。

于 2014-07-07T18:11:31.253 回答