1. 程式人生 > >解決Android TV版APP在真機上無法安裝的問題

解決Android TV版APP在真機上無法安裝的問題

最近接了個與TV開發相關的專案,採用AS自動生成的專案在模擬器上執行沒問題,但是在電視真機上就是安裝不上,跑不起來,我這還沒有電視測試,測試還要去找朋友借裝置,有點鬱悶。

AS自動生成的manifest檔案如下

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:banner
="@drawable/app_icon_your_company" android:theme="@style/Theme.Leanback">
<activity android:name=".MainActivity" android:icon="@drawable/app_icon_your_company" android:label="@string/app_name" android:logo="@drawable/app_icon_your_company"
android:screenOrientation="landscape">
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> </intent-filter> </activity
>
</application>

與我們平常看到的專案不同的是category 的值LEANBACK_LAUNCHER,這是官方對TV啟動的配置引數,用google的模擬器啟動只要你配置了banner,在桌面上就能正常顯示圖示和開啟;但是在國內的各大TV真機上還是又找不到圖示無法開啟的問題。為了解決這個問題我是全網搜尋,但是網上TV開發的案例不多,而且都是和AS自動生成的程式碼類似,估計都是在Google的模擬器上測試的結果。無果,只能去sdk裡面看官方文件了,我這沒等級的英文水平居然找到了自己想要的答案。所以正確的manifest應該是下面的

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:banner="@drawable/app_icon_your_company"
        android:theme="@style/Theme.Leanback">
        <activity
            android:name=".MainActivity"
            android:icon="@drawable/app_icon_your_company"
            android:label="@string/app_name"
            android:logo="@drawable/app_icon_your_company"
            android:screenOrientation="landscape">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>

區別就是一行配置:

<category android:name="android.intent.category.LAUNCHER" />

也就是得用我們傳統得啟動配置。

學習正確的姿勢還是得去看官方文件:…sdk/docs/training/tv/start/start.html#dev-project