কোড দ্বারা অ্যান্ড্রয়েড videoview দ্বারা সমর্থিত কিনা চেক কিভাবে?

আমি অ্যান্ড্রয়েড videoview দ্বারা ভিডিও চালানোর চেষ্টা করছি। এখানে আমার কোড:

super.onCreate(savedInstanceState);
setContentView(R.layout.video);
VideoView videoView = (VideoView) findViewById(R.id.videoView);
videoView.setVideoURI(uri);
videoView.requestFocus();
videoView.start();

এই জরিমানা কাজ করে, তবে কিছু ফোন এখনও শিরোনাম "ভিডিও প্লে করতে পারেন না" ডায়ালগ বক্স দেখায়।

আমার প্রশ্ন এই বিজ্ঞপ্তি উইন্ডোটি কিভাবে অক্ষম করতে হয়? আমি বলতে চাচ্ছি, ভিডিও ভিউ চালু করার আগে ভিডিও ফাইলটি কি সমর্থন করে কিনা তা পরীক্ষা করতে পারব কিনা? অথবা আমি কি সিস্টেম পপআপ বিজ্ঞপ্তি উইন্ডো কল নিষ্ক্রিয় বা প্রতিরোধ করতে পারি?

আমি কেবল ভিডিওটি এড়িয়ে যেতে চাই যদি ফোনটি সমর্থিত না হয়, বিজ্ঞপ্তিকরণ উইন্ডো ছাড়াই।

0
যোগ সম্পাদিত
মতামত: 1
হাই, আপনি এই জন্য সমাধান পেতে পারি?
যোগ লেখক Noundla, উৎস

2 উত্তর

আমি VideoView শুরু করার আগে ভিডিওটি চালানো হবে কিনা তা পরীক্ষা করার আগে সেটঅনররলস্টেনার ব্যবহার করেছি।

   //Restart if PROBLEM
    myVideoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {

        public boolean onError(MediaPlayer mp, int what, int extra) {
           //TODO Auto-generated method stub
            Intent intent = getIntent();
            overridePendingTransition(0, 0);
            intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);

            finish();

            overridePendingTransition(0, 0);
            startActivity(intent);

            return true;
        }

    });
    myVideoView.start();
0
যোগ

আমি এই সমস্যার অংশ সমাধান করার জন্য মিডিয়াপ্লেয়ার ব্যবহার করার অন্য সহজ উপায় খুঁজে পাওয়া যায় নি।

try {
    MediaPlayer mp = MediaPlayer.create(this, uri);
    mp.release();
} catch (Exception e) {
    Log.e("MediaPlayer", "can NOT play: " + uri);
}

উপরের কোডটি অধিকাংশ ভিডিওকে VideoView দ্বারা সমর্থিত নয়, কিন্তু এটি নিখুঁত নয়, কারণ আমি কিছু সমর্থিত নয় mkv/mpg ভিডিওগুলিও উপরের পরীক্ষাটি পাস করে ফেলতে পারি।

যাইহোক, এটা চিন্তা আরেকটি লাইন। আমি এখানে এটি পোস্ট, এবং কেউ এটি উন্নত করতে পারেন আশা করি।

0
যোগ