Projectレベルの build.gradle
のtarget sdkを 29
にすると、Android Q(10)上でFFmpeg for Androidでの処理に失敗することがわかった。
Target SDKが29だとPermission deniedが発生する
生成したコンテンツをギャラリーに保存するためにコードを書いていてAndroid Q対応が必要になった。下記のようにバージョンをあげた。
buildscript { ext.kotlin_version = '1.3.72' ext.sdk = [ 'compile': 29, 'min' : 23, 'target' : 29 ]
FFmpegを実行すると下記のようなエラーが発生してしまう。
E/mobile-ffmpeg: /storage/emulated/0/DCIM/Camera/VID_20200709_114611.mp4: Permission denied
一番簡単な解決方法はTarget SDKが28にさげる
「permission is denied using Android Q ffmpeg": error=13, Permission denied - Stack Overflow」によれば、一番簡単な解決方法はTarget SDKが28にさげることらしい。
buildscript { ext.kotlin_version = '1.3.72' ext.sdk = [ 'compile': 29, 'min' : 23, 'target' : 28 ]
いまのところ解決していないようなので、しばらく様子をみて対処方法を検討したい。