相关疑难解决方法(0)

如何访问MediaMetadataRetriever.setDataSource(...)状态代码?

我收到以下错误java.lang.RuntimeException: setDataSource failed: status = 0xFFFFFFEA,我想知道这个状态是什么.我正在使用该功能MediaMetaDataRetriever.setDataSource(String filePath)

android android-music-player android-mediaplayer

13
推荐指数
3
解决办法
6753
查看次数

MediaMetadataRetriever.setDataSource(Native Method)导致RuntimeException:status = 0xFFFFFFEA

我正在使用ReactNative构建媒体播放器.为了完成这样的应用程序,我必须导出我为检索音乐元数据(如专辑,艺术家等)以及文件路径而构建的模块.

上面的代码使用jdk1.8.0_112完美地工作,但是因为我更新到jdk1.8.0_144它停止了工作.

在这个例子中,我没有检查不是null,不是空,长度> 0等,但我真的在原来的那个.

try {
    MediaMetadataRetriever mmr = new MediaMetadataRetriever();
    mmr.setDataSource("Path to the file"); // /storage/337C-1C15/Music/Edguy/Speedhoven.mp3
} catch (RuntimeException ex) {
    // java.lang.RuntimeException: setDataSource failed: status = 0xFFFFFFEA
}
Run Code Online (Sandbox Code Playgroud)

我面临两个问题.一方面,我不是一个伟大的Android开发者,所以获得一些线索是一项艰巨的任务.另一方面,错误确实提供了良好的描述.

为了防止你们中的一些人有更好的方法来完成我的尝试,我在这里留下了整个代码:

@ReactMethod
public void getAll(Callback errorCallback, Callback successCallback){

    ContentResolver musicResolver = this.getCurrentActivity().getContentResolver();
    Uri musicUri = android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
    Cursor musicCursor = musicResolver.query(musicUri, null, null, null, null);

    if (musicCursor != null && musicCursor.moveToFirst()) {

        WritableArray jsonArray = new WritableNativeArray();
        MediaMetadataRetriever mmr = new MediaMetadataRetriever();
        WritableMap items …
Run Code Online (Sandbox Code Playgroud)

java android mediametadataretriever react-native

0
推荐指数
1
解决办法
1974
查看次数