لتشغيل فيديو من YouTube في تطبيق Android باستخدام VideoView
، يجب أولاً الحصول على مفتاح API من Google Developers Console وتفعيل خدمة YouTube Data API v3. بعد ذلك، يمكنك استخدام المفتاح لاستعلام API للحصول على معلومات الفيديو ورابط التشغيل. فيما يلي كيفية تنفيذ ذلك:
-
الحصول على مفتاح API:
مقالات ذات صلة-
تشخيص مشكلات تشغيل خدمات systemd05/04/2024
-
برامج تطوير Android لـ Ubuntu Linux05/03/2024
- انتقل إلى Google Developers Console: Google Developers Console
- قم بإنشاء مشروع جديد وفعّل خدمة YouTube Data API v3 لهذا المشروع.
- قم بإنشاء مفتاح API جديد لهذا المشروع.
-
إضافة تبويب YouTubePlayer API:
-
انتقل إلى ملف
build.gradle
في مشروعك وأضف تبويب التبعيات التالي:gradledependencies { implementation 'com.google.android.youtube:youtube-android-player:10.0.5' }
-
-
استخدام
YouTubePlayerView
:-
في ملف الـ XML الخاص بـ Activity الذي تريد فيه عرض الفيديو، أضف
YouTubePlayerView
:xml<com.google.android.youtube.player.YouTubePlayerView android:id="@+id/youtube_player_view" android:layout_width="match_parent" android:layout_height="wrap_content"/>
-
-
تهيئة
YouTubePlayerView
في الـ Activity:-
ابدأ بتهيئة
YouTubePlayerView
وتهيئةYouTubePlayer.OnInitializedListener
:javapublic class MainActivity extends YouTubeBaseActivity implements YouTubePlayer.OnInitializedListener { private static final String API_KEY = "YOUR_API_KEY"; private static final String VIDEO_ID = "YOUR_VIDEO_ID"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); YouTubePlayerView youTubePlayerView = findViewById(R.id.youtube_player_view); youTubePlayerView.initialize(API_KEY, this); } @Override public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) { if (!b) { youTubePlayer.loadVideo(VIDEO_ID); // أو يمكنك استخدام // youTubePlayer.cueVideo(VIDEO_ID); } } @Override public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) { Toast.makeText(this, "Initialization Failure", Toast.LENGTH_SHORT).show(); } }
-
استبدل
YOUR_API_KEY
بمفتاح API الخاص بك، وYOUR_VIDEO_ID
بمعرف الفيديو الخاص بـ YouTube.
-
-
تحقق من الإذن:
-
تأكد من أن لديك الإذن المناسب في ملف
AndroidManifest.xml
:xml<uses-permission android:name="android.permission.INTERNET"/>
-
قد تحتاج أيضًا إلى إضافة أذونات INTERNET
و ACCESS_NETWORK_STATE
في ملف AndroidManifest.xml
للوصول إلى الإنترنت والشبكة.
المزيد من المعلومات
بالطبع! هنا بعض المعلومات الإضافية حول تشغيل فيديو من YouTube في تطبيق Android باستخدام VideoView
:
-
إعداد
VideoView
:- بدلاً من استخدام
YouTubePlayerView
، يمكنك استخدامVideoView
لتشغيل الفيديو. يتطلب هذا الأمر استخدام URL لمقطع الفيديو على YouTube.
- بدلاً من استخدام
-
حصول على رابط تشغيل الفيديو:
- يمكنك الحصول على رابط تشغيل الفيديو من YouTube باستخدام YouTube Data API v3. يجب استخدام الرابط المباشر للفيديو وليس الصفحة الرئيسية للفيديو على YouTube.
-
استخدام
VideoView
في الـ Activity:-
في ملف الـ XML الخاص بالـ Activity الذي تريد فيه عرض الفيديو، أضف
VideoView
:xml<VideoView android:id="@+id/video_view" android:layout_width="match_parent" android:layout_height="match_parent"/>
-
ثم في الـ Activity نفسه، يمكنك تهيئة
VideoView
وتشغيل الفيديو باستخدام الكود التالي:javapublic class MainActivity extends AppCompatActivity { private VideoView videoView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); videoView = findViewById(R.id.video_view); String videoUrl = "YOUR_VIDEO_URL"; Uri uri = Uri.parse(videoUrl); videoView.setVideoURI(uri); videoView.start(); } }
-
استبدل
YOUR_VIDEO_URL
برابط تشغيل الفيديو الذي حصلت عليه من YouTube Data API v3.
-
-
أمور إضافية:
- يجب أن يكون لديك إذن
INTERNET
في ملفAndroidManifest.xml
كما ذكرت سابقًا. - قد تحتاج إلى إدارة دورة حياة
VideoView
بحيث تتوقف عن تشغيل الفيديو عندما تخرج من الـ Activity أو تعلق التطبيق.
- يجب أن يكون لديك إذن
هذه هي الطريقة الأساسية لتشغيل فيديو من YouTube في تطبيق Android باستخدام VideoView
. يمكنك استكشاف مزيد من الميزات والإضافات وفقًا لاحتياجات تطبيقك.