无法使用 camera.getPicture 访问本机图库应用程序

Can't access to native Gallery app with camera.getPicture

提问人:Antonio 提问时间:10/30/2023 更新时间:10/30/2023 访问量:18

问:

我有以下代码,我正在尝试从设备图库中选择一张图像,但它仅适用于 Google 相册应用,而不适用于其他图库应用。

this.camera.getPicture({    
   sourceType: this.camera.PictureSourceType.PHOTOLIBRARY,     
   destinationType: this.camera.DestinationType.DATA_URL,     
   encodingType: this.camera.EncodingType.JPEG,     
   mediaType: this.camera.MediaType.PICTURE,     
   quality: 80,     
   allowEdit: true})
.then(async (imageData) => {    
  console.log(imageData); }, 
(err) => {     
  console.log(JSON.stringify(err)); 
});

它返回以下错误:"/data/user/0/pt.app.name/cache/.Pic.jpg: open failed: ENOENT (No such file or directory)"

我的配置如下:config.xml

<platform name="android">
    <!-- Your platform-specific configuration here -->
    <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
            <application android:networkSecurityConfig="@xml/network_security_config" />
            <application android:requestLegacyExternalStorage="true" />
            <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
            <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
            <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
            <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        </edit-config>
</platform>

预期:我希望返回 base64 代码或以某种方式使用 (我已经尝试过,它返回“/data/user/0/pt.app.name/cache/.Pic.jpg“),并将其转换为 base64。FILE_URI

其他信息:

  • IoniC-Cordova 版本:12

我将不胜感激在解决此问题并使图像选择与所有图库应用程序一起使用方面的任何帮助。先谢谢你

android cordova ionic-framework cordova-plugins

评论


答: 暂无答案