অ্যান্ড্রয়েড টিভি, অ্যান্ড্রয়েড টিভি, অ্যান্ড্রয়েড টিভি

অ্যান্ড্রয়েড টিভিতে ডি-প্যাড নেভিগেশন

অ্যান্ড্রয়েড টিভির রিমোট কন্ট্রোলে একটি ডি-প্যাড কন্ট্রোল আছে যা আপনার Activity dispatchKeyEvent(KeyEvent) ইভেন্টে কী ইভেন্ট হিসেবে কমান্ড পাঠায়। এগুলোকে PlayerView এর কাছে ডেলিগেট করতে হবে:

কোটলিন

override fun dispatchKeyEvent(event: KeyEvent?): Boolean {
  return playerView.dispatchKeyEvent(event!!) || super.dispatchKeyEvent(event)
}

জাভা

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
  return playerView.dispatchKeyEvent(event) || super.dispatchKeyEvent(event);
}

প্লেব্যাক কন্ট্রোল নেভিগেট করতে এবং বিজ্ঞাপন এড়িয়ে যেতে PlayerView এর জন্য ফোকাস অনুরোধ করা গুরুত্বপূর্ণ। ActivityonCreate ইভেন্টে ফোকাস অনুরোধ করার কথা বিবেচনা করুন:

কোটলিন

override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  // ...
  playerView.requestFocus()
  // ...
}

জাভা

@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  // ...
  playerView.requestFocus();
  // ...
}

আপনি যদি অ্যান্ড্রয়েড টিভিতে কম্পোজ ব্যবহার করেন, তাহলে আপনাকে AndroidView কে ফোকাসযোগ্য করতে হবে এবং সেই অনুযায়ী AndroidView তে মডিফায়ার প্যারামিটার পাস করে ইভেন্টটি ডেলিগেট করতে হবে:

AndroidView(
  modifier = modifier.focusable().onKeyEvent { playerView.dispatchKeyEvent(it.nativeKeyEvent) },
  factory = { playerView },
)