Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

android Q 没有适配 #50

Open
AmioLee opened this issue Mar 12, 2020 · 20 comments
Open

android Q 没有适配 #50

AmioLee opened this issue Mar 12, 2020 · 20 comments
Labels

Comments

@AmioLee
Copy link

AmioLee commented Mar 12, 2020

10以下系统没问题

@iknow4x iknow4x added the bug label Mar 14, 2020
@iknow4x
Copy link
Owner

iknow4x commented Apr 9, 2020

能提供下详细的日志吗?

@po1xiao
Copy link

po1xiao commented May 6, 2020

android Q报错:java.io.IOException: Cannot run program "/data/user/0/com.huaxinauction.chengjiao/files/ffmpeg": error=13, Permission denied

@liangtian123
Copy link

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

@po1xiao
Copy link

po1xiao commented May 16, 2020

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

@chinesebobo
Copy link

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

你好 项目遇到了同样的问题 您解决了吗?

@po1xiao
Copy link

po1xiao commented Jun 19, 2020

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

你好 项目遇到了同样的问题 您解决了吗?

下载这个库,引用到代码中,而不是使用implementation 'nl.bravobit:android-ffmpeg:1.1.7'

@lodgkk
Copy link

lodgkk commented Jul 1, 2020

@lodgkk
Copy link

lodgkk commented Jul 2, 2020

这个新的库的开始时间和时长不需要处理 开始时间的格式00:00:20 改为20 时长的格式00:00:10改为10,还有因为10的存储路劲的问题,从相册获取的的视频的路径都是content://media/开头的,这个路径要处理成真实路径

@zxb123456
Copy link

这个问题有好的解决方法没有?可以提供下吗

@shiv71
Copy link

shiv71 commented Aug 7, 2020

I have updated my app to API level 29 so it broke my image picking mechanism. Earlier everything was working fine. Now when I searched over forums/StackOverflow I came to know that I have to migrate to a scoped storage framework in order to make it work. I found 2 things so far

  1. opt out of scoped storage
  2. Read the stream and write into the cache directory so that my app can access it.

My question is that is it mandatory to copy the file for using it. If yes I'm afraid to use this approach as it will consume lot of time because my app uses large videos that we upload to the server.

Is it possible to use this framework to just read the URI of image/video without copying to the cache directory? Did anyone working on it?

for reference, I followed these articles
https://developer.android.com/guide/topics/providers/document-provider
https://medium.com/@sriramaripirala/android-10-open-failed-eacces-permission-denied-da8b630a89df
https://issuetracker.google.com/issues/130494105

We did a lot of searching over google and other forums but didn't found any way to fix the issue without point 2 mentioned above. We also don't want to opt-out as it will break in Android 11. We posted questions at several developer forums and websites but still unable to figure it out.

@chinesebobo
Copy link

这个新的库的开始时间和时长不需要处理 开始时间的格式00:00:20 改为20 时长的格式00:00:10改为10,还有因为10的存储路劲的问题,从相册获取的的视频的路径都是content://media/开头的,这个路径要处理成真实路径

你好 您给的https://github.com/tanersener/mobile-ffmpeg可以更换到这个库 这个库现在打开是404 有其他链接吗

@chinesebobo
Copy link

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

你好 项目遇到了同样的问题 您解决了吗?

下载这个库,引用到代码中,而不是使用implementation 'nl.bravobit:android-ffmpeg:1.1.7'
您好 下载您说的这个库替换调implementation 'nl.bravobit:android-ffmpeg:1.1.7'就可以了吗?

@po1xiao
Copy link

po1xiao commented Oct 9, 2020

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

你好 项目遇到了同样的问题 您解决了吗?

下载这个库,引用到代码中,而不是使用implementation 'nl.bravobit:android-ffmpeg:1.1.7'
您好 下载您说的这个库替换调implementation 'nl.bravobit:android-ffmpeg:1.1.7'就可以了吗?

是的

@po1xiao
Copy link

po1xiao commented Oct 9, 2020

这个新的库的开始时间和时长不需要处理 开始时间的格式00:00:20 改为20 时长的格式00:00:10改为10,还有因为10的存储路劲的问题,从相册获取的的视频的路径都是content://media/开头的,这个路径要处理成真实路径

你好 您给的https://github.com/tanersener/mobile-ffmpeg可以更换到这个库 这个库现在打开是404 有其他链接吗

https://github.com/tanersener/mobile-ffmpeg

@chinesebobo
Copy link

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

你好 项目遇到了同样的问题 您解决了吗?

下载这个库,引用到代码中,而不是使用implementation 'nl.bravobit:android-ffmpeg:1.1.7'
您好 下载您说的这个库替换调implementation 'nl.bravobit:android-ffmpeg:1.1.7'就可以了吗?

是的

感谢了 我试了下载zip包 但是下载到后期就是失败....

@chinesebobo
Copy link

这个新的库的开始时间和时长不需要处理 开始时间的格式00:00:20 改为20 时长的格式00:00:10改为10,还有因为10的存储路劲的问题,从相册获取的的视频的路径都是content://media/开头的,这个路径要处理成真实路径

你好 您给的https://github.com/tanersener/mobile-ffmpeg可以更换到这个库 这个库现在打开是404 有其他链接吗

https://github.com/tanersener/mobile-ffmpeg

谢谢

@chinesebobo
Copy link

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

你好 项目遇到了同样的问题 您解决了吗?

下载这个库,引用到代码中,而不是使用implementation 'nl.bravobit:android-ffmpeg:1.1.7'
您好 下载您说的这个库替换调implementation 'nl.bravobit:android-ffmpeg:1.1.7'就可以了吗?

是的

你好 能给个联系方式吗 请教你一个问题

@chinesebobo
Copy link

chinesebobo commented Oct 29, 2020

implementation 'nl.bravobit:android-ffmpeg:1.1.7'替换为implementation 'com.github.yangfeng1994:FFmpeg-Android:v2.0.1' 亲测有效,链接地址为 https://github.com/yangfeng1994/FFmpeg-Android 只需将VideoTrimmerUtil下trim 方法中的 FFmpeg.getInstance(context).execute(command, new ExecuteBinaryResponseHandler() {}这个更改为
FFmpegAsyncUtils asyncTask =new FFmpegAsyncUtils();
String finalOutputFile = outputFile;
asyncTask.setCallback(new FFmpegExecuteCallback() {

  @Override
  public void onFFmpegStart() {
    callback.onStartTrim();
  }

  @Override
  public void onFFmpegSucceed(@Nullable String executeOutput) {
    callback.onFinishTrim(finalOutputFile);
  }

  @Override
  public void onFFmpegFailed(@Nullable String executeOutput) {

  }

  @Override
  public void onFFmpegProgress(@Nullable Integer progress) {

// fload mprogress = progress/执行视频文件或语音文件时长
}

  @Override
  public void onFFmpegCancel() {

  }
});
asyncTask.execute(command);

即可

@po1xiao
Copy link

po1xiao commented Oct 29, 2020

那是因为安卓10不支持path直接访问文件了,两个解决办法:把sdk降到10以下,或者在AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true"

AndroidManifest.xml文件加上android:requestLegacyExternalStorage="true" 无效,目前把sdk降到28了

你好 项目遇到了同样的问题 您解决了吗?

下载这个库,引用到代码中,而不是使用implementation 'nl.bravobit:android-ffmpeg:1.1.7'
您好 下载您说的这个库替换调implementation 'nl.bravobit:android-ffmpeg:1.1.7'就可以了吗?

是的

你好 能给个联系方式吗 请教你一个问题

qq:229605030

@chinesebobo
Copy link

chinesebobo commented Oct 30, 2020 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

8 participants