【问题标题】:AndroidAudioConverter permission is denied using Android Q使用 Android Q 拒绝 AndroidAudioConverter 权限
【发布时间】:2020-02-09 03:43:43
【问题描述】:

Android Q 对文件夹/文件权限进行了一些重大更改。在 Android 上使用转换器时出现以下错误:

java.io.IOException:无法运行程序“/data/user/0/com.ltcfastpay.timecard.debug/files/ffmpeg”:错误=13,权限被拒绝

我在使用 AndroidAudioRecorder 时遇到了同样的问题,发现在 Android Q 中不推荐使用以下获取文件路径的方法:

Environment.getExternalStorageDirectory().getPath()

要修复,我必须将其更改为:

this.getActivity().getFilesDir().getAbsolutePath()

所以现在我可以录制并保存为 wav,但是当我尝试转换为 mp3 时,权限被拒绝。

我试图更改 AndroidAudioConverter.java 文件,但它被锁定在 Android Studio 中,这告诉我我可能不应该篡改它。

【问题讨论】:

    标签: android


    【解决方案1】:

    如果您不想更改库,只需将您的 build.gradle 中的 targetSdkVersion 29 更改为 28

    它对我有用。

    【讨论】:

    • 那么您不能将您的应用上传到 Play 商店,因为最低 targetSdkVersion 必须为 29 或更高。
    【解决方案2】:

    现在,如果你们正在寻找适用于 ANDROID Q 的 FFMPEG,这里是 FFMPEG Build 下面的链接使用。将此添加到您的 app/build.gradle

    最小 SDK 24

      dependencies {
            implementation 'com.arthenica:mobile-ffmpeg-full:4.3'
        }
    

    最小 SDK 16

    dependencies {
        implementation 'com.arthenica:mobile-ffmpeg-full:4.2.2.LTS'
    }
    

    OnePlus 7T
    Android Q

    中测试

    【讨论】:

    • 你好,正如你在图书馆中提到的,这也适用于 android 10。但是 apk 大小增加了很多,大小增加了大约 70 MB!!!!你有什么想法可以减少尺寸吗?
    • @pratikvekariya 有它的选项。您可以根据自己的需要使用。如下选项
    • min min-gpl https https-gpl audio video full-gpl
    • 喜欢这个实现 'com.arthenica:mobile-ffmpeg-full-gpl:4.4'
    • 在使用这个库后使用 bundle 代替 apk 来减少你的 apk 大小。 google 会根据你的设备架构自动提供原生库。
    猜你喜欢
    • 2020-06-07
    • 1970-01-01
    • 2017-09-19
    • 1970-01-01
    • 1970-01-01
    • 2013-07-03
    • 2015-12-21
    • 2020-06-03
    • 2020-08-27
    相关资源
    最近更新 更多