রেফারেন্স টিভি অ্যাপ্লিকেশন

প্যানেল টিভি এবং অপারেটর এসটিবি এর মতো অ্যান্ড্রয়েড টিভি ডিভাইসের কিছু শ্রেণির জন্য লাইভ টিভি সামগ্রী খেলে এমন একটি টিভি অ্যাপ্লিকেশন প্রয়োজন। অ্যানড্রইড প্ল্যাটফর্মের পাশাপাশি একটি রেফারেন্স টিভি অ্যাপ্লিকেশন ( লাইভ টিভি ) সরবরাহ করা হয়, যা কাস্টমাইজড, প্রসারিত বা প্রতিস্থাপন করা যেতে পারে। উত্স কোডটি অ্যান্ড্রয়েড ওপেন সোর্স প্রকল্পে উপলব্ধ।

এই নিবন্ধটি আপনার অ্যান্ড্রয়েড টেলিভিশন ডিভাইসের লাইভ টিভি ভিত্তিক একটি সিস্টেম টিভি অ্যাপ কীভাবে তৈরি এবং কাস্টমাইজ করা যায় তার সংক্ষিপ্তসার জানায়। (আপনি ডিভাইস প্রস্তুতকারক বা দেশ-নির্দিষ্ট বৈশিষ্ট্যগুলি প্রয়োগ করতে আপনার টিভি অ্যাপ্লিকেশনটি বাড়িয়ে দিতে পারেন, তবে এটি রেফারেন্স টিভি অ্যাপের আওতায় নেই))

নির্ভরতা

টিভি অ্যাপ্লিকেশনটি টিভি ইনপুট ফ্রেমওয়ার্ক (টিআইএফ) এর একটি উপাদান এবং অন্যান্য উপাদানগুলির সাথে স্বাধীনভাবে ব্যবহার করা যায় না। এর অর্থ হ'ল কেবল টিআইএফ সহ ডিভাইসগুলি লাইভ টিভি অ্যাপ্লিকেশনটি চালাতে সক্ষম হবে।

লাইভ টিভি অ্যাপ্লিকেশনটি Android এপিআইয়ের উপর নির্ভর করে। বিভিন্ন স্তরের এপিআই স্তরের উপর নির্ভরশীলতা রয়েছে:

সারণী 1. লাইভ টিভি শাখা।

শাখা লক্ষ্য এপিআই স্তর ন্যূনতম এপিআই স্তর
মাস্টার 24 (অ্যান্ড্রয়েড 7.0) 23
অ্যান্ড্রয়েড-লাইভ-টিভি 23 (অ্যান্ড্রয়েড 6.0) 21
android-live-tv-l-mr1 22 (অ্যান্ড্রয়েড 5.1) 21

উত্স পান

শুরু করতে, গিট থেকে আপনি যে লাইভ টিভি চান তা চয়ন করুন। নীচের নির্দেশাবলী লাইভ টিভির বর্তমান সংস্করণের জন্য, তবে উপরের টেবিলের তালিকাভুক্ত শাখাটি মাস্টার থেকে আলাদা করে আপনি সহজেই পূর্ববর্তী সংস্করণটি নির্বাচন করতে পারেন।

mkdir live-tv && cd live-tv
repo init -u https://android.googlesource.com/platform/manifest -b master
repo sync -j8 -c

নির্মাণ

লাইভ টিভি কোড তৈরি করতে, চালান:

. build/envsetup.sh
tapas LiveTv x86
make LiveTv

ঠেলা

লাইভ টিভিটিকে আপনার পরীক্ষার ডিভাইসে ঠেলাতে:

adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk

বিকাশকারী যদি লাইভ টিভি অ্যাপ্লিকেশনটির সিস্টেমের অনুমতি পেতে চায় তবে প্রথমবার এটি ইনস্টল হওয়ার পরে এটি / সিস্টেম / বেসরকারী-অ্যাপ্লিকেশনটিতে চাপ দেওয়া দরকার:

adb push $OUT/system/priv-app/LiveTv/LiveTv.apk  /system/priv-app/LiveTv/

পরীক্ষা

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

ইউনিট পরীক্ষা

লাইভ টিভি অ্যাপের জন্য ইউনিট এবং কার্যকরী পরীক্ষা রয়েছে। পরীক্ষা চালানোর জন্য আপনার অবশ্যই একটি ডিভাইস (বা এমুলেটর) সংযুক্ত থাকতে হবে।

0 বি 4 এডি 14080

কার্যকরী পরীক্ষা

adb shell logcat -c
m LiveTv TVTestInput TVFuncTests -j20 &&\
adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk &&\
adb install -r -d $OUT/system/app/TVTestInput/TVTestInput.apk && \
adb install -r -d $OUT/data/app/TVFuncTests/TVFuncTests.apk && \
adb shell pm clear com.android.providers.tv && \
adb shell pm clear com.google.android.tv && \
adb shell am instrument \
  -e testSetupMode func \
  -w com.android.tv.testinput/.instrument.TestSetupInstrumentation &&\
adb shell input keyevent KEYCODE_HOME &&\
adb shell am instrument \
  -w 'com.android.tv.tests.ui/android.support.test.runner.AndroidJUnitRunner'

জাঙ্ক টেস্ট

জাঙ্ক পরীক্ষাগুলি বাদ দেওয়া ফ্রেম এবং রেন্ডারিংয়ে বিলম্বের সন্ধান করে।

adb shell logcat -c
m LiveTv TVTestInput TVJankTests -j20 &&\
adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk &&\
adb install -r -d $OUT/system/app/TVTestInput/TVTestInput.apk &&\
adb install -r -d $OUT/data/app/TVJankTests/TVJankTests.apk &&\
adb shell pm clear com.android.providers.tv &&\
adb shell pm clear com.google.android.tv &&\
echo "Creating a lot of channels and EPG data, this may take a while" &&\
adb shell am instrument \
  -e testSetupMode jank \
  -w com.android.tv.testinput/.instrument.TestSetupInstrumentation &&\
adb shell input keyevent KEYCODE_HOME &&\
adb shell am instrument \
  -w 'com.android.tv.tests.jank/android.support.test.runner.AndroidJUnitRunner'