简体   繁体   English

尝试从列表播放时出现MediaPlayer错误

[英]MediaPlayer error when trying to play from list

I am trying to build a recorder app, MainActivity records, other activity is for a listview that shows all the records and the media player, something went wrong with the media player, it worked fine before I built the second activity and then started some native error, so I thought I will build the second activity and will fix it... still get some native error. 我正在尝试构建一个记录器应用程序,MainActivity记录,其他活动是用于显示所有记录和媒体播放器的列表视图,媒体播放器出了点问题,在我构建第二个活动然后开始一些本机操作之前,它工作正常错误,所以我想我将建立第二个活动并将其修复...仍然会出现一些本机错误。 please help me to fix it! 请帮助我修复它!

I loged the filePath, seems fine. 我登录了filePath,看起来还不错。

Log.d(filePath, "The path exist"); Log.d(filePath,“路径存在”);

08-08 12:05:49.298 2801-2801/com.example.tsuryohananov.voicerecorder D//storage/emulated/0/Recordings/07-08-2017 06:37:15 PM.mp4: The path exist 08-08 12:05:49.298 2801-2801 / com.example.tsuryohananov.voicerecorder D // storage / emulated / 0 / Recordings / 07-08-2017 06:37:15 PM.mp4:路径存在

my code (Records Activity): 我的代码(记录活动):

    public class RecordsActivity extends AppCompatActivity {

    Button play;
    static ListView recordList;
    ArrayAdapter<String> listAdapter;
    String recordToPlay;
    MediaPlayer mp;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_records);

        mp = new MediaPlayer();

        play = (Button) findViewById(R.id.playbutton);
        recordList = (ListView) findViewById(R.id.list);

// Adapter with an ArrayList from the MainActivity that contains all the file names.

        listAdapter = new ArrayAdapter<String>(RecordsActivity.this, R.layout.support_simple_spinner_dropdown_item, MainActivity.listRecord);
        recordList.setAdapter(listAdapter);


        recordList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                //int chosenPosition = position;
                recordToPlay = listAdapter.getItem(position);

//made that toast to check if the name of the file set properly, it looks like it is.

                Toast.makeText(getApplicationContext(), recordToPlay+ " Chosen", Toast.LENGTH_LONG).show();
                }
            });

            play.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    String filePath = Environment.getExternalStorageDirectory()+"/Recordings/"+recordToPlay;


                    try {
                        mp.setDataSource(filePath);
                        mp.prepare();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                        @Override
                        public void onPrepared(MediaPlayer mediaPlayer) {
                            //finalMp1.start();
                            mp.start();

                        }
                    });

                }
            });
        }
    }

logcat- logcat-

08-07 18:01:25.330 9157-9157/? 08-07 18:01:25.330 9157-9157 /? I/zygote: Not late-enabling -Xcheck:jni (already on) 08-07 18:01:25.445 9157-9157/? I / zygote:不延迟启用-Xcheck:jni(已启用)08-07 18:01:25.445 9157-9157 /? W/zygote: Unexpected CPU variant for X86 using defaults: x86 08-07 18:01:25.822 9157-9157/com.example.tsuryohananov.voicerecorder I/InstantRun: starting instant run server: is main process 08-07 18:01:26.392 9157-9206/com.example.tsuryohananov.voicerecorder D/OpenGLRenderer: HWUI GL Pipeline W / zygote:使用默认值的X86的CPU意外变体:x86 08-07 18:01:25.822 9157-9157 / com.example.tsuryohananov.voicerecorder I / InstantRun:启动即时运行服务器:是主进程08-07 18:01 :26.392 9157-9206 / com.example.tsuryohananov.voicerecorder D / OpenGL渲染器:HWUI GL Pipeline

[ 08-07 18:01:26.423 9157: 9206 D/ ] HostConnection::get() New Host Connection established 0xa3d645c0, tid 9206 08-07 18:01:26.655 9157-9206/com.example.tsuryohananov.voicerecorder I/OpenGLRenderer: Initialized EGL, version 1.4 08-07 18:01:26.655 9157-9206/com.example.tsuryohananov.voicerecorder D/OpenGLRenderer: Swap behavior 1 08-07 18:01:26.655 9157-9206/com.example.tsuryohananov.voicerecorder W/OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without... 08-07 18:01:26.655 9157-9206/com.example.tsuryohananov.voicerecorder D/OpenGLRenderer: Swap behavior 0 08-07 18:01:26.657 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglCreateContext: 0xa139c420: maj 2 min 0 rcv 2 08-07 18:01:26.658 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:26.664 9157-9206/com.example.tsuryohananov.voicerecorder W/android.hardware.graphics.mapper@2.0::Mapper: getServic [08-07 18:01:26.423 9157:9206 D /] HostConnection :: get()建立新的主机连接0xa3d645c0,tid 9206 08-07 18:01:26.655 9157-9206 / com.example.tsuryohananov.voicerecorder I / OpenGLRenderer:初始化的EGL版本1.4 08-07 18:01:26.655 9157-9206 / com.example.tsuryohananov.voicerecorder D / OpenGLRenderer:交换行为1 08-07 18:01:26.655 9157-9206 / com.example.tsuryohananov .voicerecorder W / OpenGLRenderer:无法使用EGL_SWAP_BEHAVIOR_PRESERVED选择配置,请重试而无需... 08-07 18:01:26.655 9157-9206 / com.example.tsuryohananov.voicerecorder D / OpenGLRenderer:交换行为0 08-07 18:01 :26.657 9157-9206 / com.example.tsuryohananov.voicerecorder D / EGL_emulation:eglCreateContext:0xa139c420:maj 2 min 0 rcv 2 08-07 18:01:26.658 9157-9206 / com.example.tsuryohananov.voicerecorder D / EGL_emulation: eglMakeCurrent:0xa139c420:ver 2 0(tinfo 0xa265dad0)08-07 18:01:26.664 9157-9206 / com.example.tsuryohananov.voicerecorder W/android.hardware.graphics.mapper@2.0 :: Mapper:getServic e: found null hwbinder interface 08-07 18:01:26.667 9157-9206/com.example.tsuryohananov.voicerecorder I/vndksupport: sphal namespace is not configured for this process. e:发现空的hwbinder接口08-07 18:01:26.667 9157-9206 / com.example.tsuryohananov.voicerecorder I / vndksupport:此过程未配置sphal名称空间。 Loading /system/lib/hw/gralloc.ranchu.so from the current namespace instead. 而是从当前名称空间加载/system/lib/hw/gralloc.ranchu.so。 08-07 18:01:26.718 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:34.512 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:34.535 9157-9183/com.example.tsuryohananov.voicerecorder I/zygote: Background concurrent copying GC freed 4737(843KB) AllocSpace objects, 0(0B) LOS objects, 64% free, 855KB/2MB, paused 10.284ms total 110.547ms 08-07 18:01:34.558 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Do partial code cache collection, code=13KB, data=21KB 08-07 18:01:34.558 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: After code cache collection, code=13KB, data=21KB 08-07 18:01:34.558 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Increasing code cache capacity to 128KB 08-07 18:01:34.563 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: 08-07 18:01:26.718 9157-9206 / com.example.tsuryohananov.voicerecorder D / EGL_emulation:eglMakeCurrent:0xa139c420:ver 2 0(tinfo 0xa265dad0)08-07 18:01:34.512 9157-9206 / com.example。 tsuryohananov.voicerecorder D / EGL_仿真:eglMakeCurrent:0xa139c420:ver 2 0(tinfo 0xa265dad0)08-07 18:01:34.535 9157-9183 / com.example.tsuryohananov.voicerecorder I / zygote:后台并发复制GC已释放4737(843KB) AllocSpace对象,0(0B)LOS对象,64%空闲,855KB / 2MB,已暂停10.284ms,总共110.547ms,08-07 18:01:34.558 9157-9168 / com.example.tsuryohananov.voicerecorder I /合一:执行部分代码缓存收集,代码= 13KB,数据= 21KB 08-07 18:01:34.558 9157-9168 / com.example.tsuryohananov.voicerecorder I /合子:代码缓存收集后,代码= 13KB,数据= 21KB 08-07 18: 01:34.558 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:将代码缓存容量增加到128KB 08-07 18:01:34.563 9157-9206 / com.example.tsuryohananov.voicerecorder D / EGL_emulation:eglMakeCurrent:0xa139c420 : ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:34.565 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Do partial code cache collection, code=13KB, data=38KB 08-07 18:01:34.566 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: After code cache collection, code=13KB, data=38KB 08-07 18:01:34.567 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Increasing code cache capacity to 256KB 08-07 18:01:34.567 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: JIT allocated 72KB for compiled code of void android.widget.TextView.(android.content.Context, android.util.AttributeSet, int, int) 08-07 18:01:34.589 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Compiler allocated 4MB to compile void android.widget.TextView.(android.content.Context, android.util.AttributeSet, int, int) 08-07 18:01:34.624 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:34.642 9157-9206/com.e 版本2 0(tinfo 0xa265dad0)08-07 18:01:34.565 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:执行部分代码缓存收集,代码= 13KB,数据= 38KB 08-07 18:01: 34.566 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:收集代码缓存后,代码= 13KB,数据= 38KB 08-07 18:01:34.567 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote :将代码缓存容量增加到256KB 08-07 18:01:34.567 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:JIT为无效android.widget.TextView的已编译代码分配了72KB。(android.content.Context ,android.util.AttributeSet,int,int)08-07 18:01:34.589 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:编译器分配了4MB的空间来编译void android.widget.TextView。(android.content .Context,android.util.AttributeSet,int,int)08-07 18:01:34.624 9157-9206 / com.example.tsuryohananov.voicerecorder D / EGL_emulation:eglMakeCurrent:0xa139c420:ver 2 0(tinfo 0xa265dad0)08-07 18:01:34.642 9157-9206 / com.e xample.tsuryohananov.voicerecorder I/chatty: uid=10093(u0_a93) RenderThread identical 1 line 08-07 18:01:34.692 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:34.698 9157-9206/com.example.tsuryohananov.voicerecorder D/OpenGLRenderer: endAllActiveAnimators on 0x92173c00 (RippleDrawable) with handle 0x921263f0 08-07 18:01:35.380 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:36.248 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Do full code cache collection, code=125KB, data=69KB 08-07 18:01:36.253 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: After code cache collection, code=123KB, data=54KB 08-07 18:01:36.934 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:36.958 9157-9206/com.example.tsuryohananov.voic xample.tsuryohananov.voicerecorder I /聊天:uid = 10093(u0_a93)RenderThread相同1行08-07 18:01:34.692 9157-9206 / com.example.tsuryohananov.voicerecorder D / EGL_emulation:eglMakeCurrent:0xa139c420:ver 2 0( tinfo 0xa265dad0)08-07 18:01:34.698 9157-9206 / com.example.tsuryohananov.voicerecorder D / OpenGLRenderer:0x92173c00(RippleDrawable)上的endAllActiveAnimators带有句柄0x921263f0 08-07 18:01:35.380 9157-9206 / com.example .tsuryohananov.voicerecorder D / EGL_仿真:eglMakeCurrent:0xa139c420:ver 2 0(tinfo 0xa265dad0)08-07 18:01:36.248 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:执行完整的代码缓存收集,代码= 125KB,data = 69KB 08-07 18:01:36.253 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:代码缓存收集后,code = 123KB,data = 54KB 08-07 18:01:36.934 9157- 9206 / com.example.tsuryohananov.voicerecorder D / EGL_emulation:eglMakeCurrent:0xa139c420:ver 2 0(tinfo 0xa265dad0)08-07 18:01:36.958 9157-9206 / com.example.tsuryohananov.voic erecorder D/RenderScript HIDL Adaptation: IRenderScriptDevice::getService() 08-07 18:01:36.962 9157-9206/com.example.tsuryohananov.voicerecorder W/android.hardware.renderscript@1.0::Device: getService: found null hwbinder interface 08-07 18:01:36.963 9157-9206/com.example.tsuryohananov.voicerecorder D/RenderScript HIDL Adaptation: IRenderScriptDevice::getService() returned 0x0 08-07 18:01:36.963 9157-9206/com.example.tsuryohananov.voicerecorder D/RenderScript HIDL Adaptation: Using Fallback Path. erecorder D / RenderScript HIDL改编:IRenderScriptDevice :: getService()08-07 18:01:36.962 9157-9206 / com.example.tsuryohananov.voicerecorder W/android.hardware.renderscript@1.0 ::: Device:getService:found null hwbinder介面08-07 18:01:36.963 9157-9206 / com.example.tsuryohananov.voicerecorder D / RenderScript HIDL改编:IRenderScriptDevice :: getService()返回0x0 08-07 18:01:36.963 9157-9206 / com.example。 tsuryohananov.voicerecorder D / RenderScript HIDL改编:使用后备路径。 08-07 18:01:36.975 9157-9206/com.example.tsuryohananov.voicerecorder D/RenderScript: Successfully queried cache dir: /data/user_de/0/com.example.tsuryohananov.voicerecorder/code_cache 08-07 18:01:36.976 9157-9206/com.example.tsuryohananov.voicerecorder D/RenderScript: Setting cache dir: /data/user_de/0/com.example.tsuryohananov.voicerecorder/code_cache 08-07 18:01:36.985 9157-9206/com.example.tsuryohananov.voicerecorder D/EGL_emulation: eglMakeCurrent: 0xa139c420: ver 2 0 (tinfo 0xa265dad0) 08-07 18:01:38.488 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Do partial code cache collection, code=124KB, data=67KB 08-07 18:01:38.488 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: After code cache collection, code=124KB, data=67KB 08-07 18:01:38.488 9157-9168/com.example.tsuryohananov.voicerecorder I/zygote: Increasing code cache capacity to 512KB 08-07 18:01:36.975 9157-9206 / com.example.tsuryohananov.voicerecorder D / RenderScript:成功查询缓存目录:/data/user_de/0/com.example.tsuryohananov.voicerecorder/code_cache 08-07 18:01 :36.976 9157-9206 / com.example.tsuryohananov.voicerecorder D / RenderScript:设置缓存目录:/data/user_de/0/com.example.tsuryohananov.voicerecorder/code_cache 08-07 18:01:36.985 9157-9206 / com .example.tsuryohananov.voicerecorder D / EGL_emulation:eglMakeCurrent:0xa139c420:ver 2 0(tinfo 0xa265dad0)08-07 18:01:38.488 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:执行部分代码缓存收集,代码= 124KB,数据= 67KB 08-07 18:01:38.488 9157-9168 / com.example.tsuryohananov.voicerecorder I /合子:代码缓存收集后,代码= 124KB,数据= 67KB 08-07 18:01:38.488 9157-9168 / com.example.tsuryohananov.voicerecorder I / zygote:将代码缓存容量增加到512KB

08-07 18:01:38.805 9157-9324/com.example.tsuryohananov.voicerecorder E/MediaPlayerNative: error (1, -2147483648) 08-07 18:01:38.805 9157-9324 / com.example.tsuryohananov.voicerecorder E / MediaPlayerNative:错误(1,-2147483648)

08-07 18:01:38.809 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: java.io.IOException: Prepare failed.: status=0x1 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.media.MediaPlayer._prepare(Native Method) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.media.MediaPlayer.prepare(MediaPlayer.java:1259) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at com.example.tsuryohananov.voicerecorder.RecordsActivity$2.onClick(RecordsActivity.java:67) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.view.View.performClick(View.java:6219) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.view.View$PerformClick.run(View.java:24482) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.os.Handler.handleCallback(Handler.java:769) 08- 08-07 18:01:38.809 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:java.io.IOException:准备失败。:status = 0x1 08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:位于android.media.MediaPlayer._prepare(本机方法)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:在android.media.MediaPlayer.prepare(MediaPlayer.java:1259)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:在com.example.tsuryohananov.voicerecorder.RecordsActivity $ 2.onClick(RecordsActivity.java:67)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:at android.view.View.performClick(View.java:6219) 08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:at android.view.View $ PerformClick.run(View.java:24482)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:at android.os.Handler.handleCallback(Handler.java:769)08- 07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.os.Handler.dispatchMessage(Handler.java:98) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.os.Looper.loop(Looper.java:164) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at android.app.ActivityThread.main(ActivityThread.java:6540) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at java.lang.reflect.Method.invoke(Native Method) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 08-07 18:01:38.810 9157-9157/com.example.tsuryohananov.voicerecorder W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) 07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:位于android.os.Handler.dispatchMessage(Handler.java:98)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:位于android.os.Looper.loop(Looper.java:164)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System .err:位于android.app.ActivityThread.main(ActivityThread.java:6540)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:位于java.lang.reflect。 Method.invoke(本机方法)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:位于com.android.internal.os.Zygote $ MethodAndArgsCaller.run(Zygote.java :240)08-07 18:01:38.810 9157-9157 / com.example.tsuryohananov.voicerecorder W / System.err:位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

我猜你必须使用recordToPlay = MainActivity.listRecord.get(position);

So the reason were: the file named with DateTime, when the format were like that: 因此,原因是:以DateTime命名的文件,其格式如下:

String dateTime = new SimpleDateFormat("dd-MM-yyyy  hh:mm:ss aa", Locale.getDefault()).format(new Date());

the MediaPlayer gets an error for some reason. MediaPlayer由于某种原因而出错。

So I Changed it to: 所以我将其更改为:

String dateTime = new SimpleDateFormat("dd-MM-yyyy  hh-mm-ss aa", Locale.getDefault()).format(new Date());

although I really prefer the hh:mm:ss 虽然我真的更喜欢hh:mm:ss

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 试图在 Android 应用中播放音频的 MediaPlayer 错误 - MediaPlayer error trying to play audio in Android app 尝试在Android Wear设备上使用MediaPlayer()类时出错 - Error when trying to use the MediaPlayer() class on an android wear device 尝试从URI播放音频文件时出错 - Error when trying to play audio file from URI JavaFX:尝试通过MediaPlayer类播放mp3文件时未初始化“工具包” - JavaFX: “Toolkit” not initialized when trying to play an mp3 file through MediaPlayer class 在Android中使用MediaPlayer播放mp3文件列表 - Play list of mp3 file with MediaPlayer in Android android-当公共静态时,MediaPlayer无法播放 - android - MediaPlayer does not play when public static Android MediaPlayer:从字符串变量引用时出现错误(1,-2147483648) - Android MediaPlayer: error (1, -2147483648) when referencing from string variable 尝试从活动目录(AD LDS)列出用户时出错 - Error when trying to list of users from active directory (AD LDS) 尝试在视频视图中播放来自网址的视频时,我收到一个FileNotFoundException:某些手机上没有内容提供商错误 - When trying to play a video from url in a videoview, I get a FileNotFoundException: No content provider error on SOME phones 如何解决MediaPlayer错误“无法播放此视频” - How to solve MediaPlayer Error “Can't play this video”
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM