So you're porting your game over to Android TV using Unity 4.6. And it's not working and not getting approved by Google you say? And you've tried everything? Even sacrificing a goat in the name of the dark lord, you say? Well, the latter won't work! That's just silly!
You should be sacrificing a pig, not a goat. Geesh.

So anyway, what you need to do is write a proper manifest with all the right permissions. Unity 5 does most of this for you, so it shouldn't be a big problem. For those of us temporarily stuck in 4.6 though, it's a big problem. So here's the manifest you need:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.unity3d.player" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:installLocation="preferExternal" android:versionCode="1" android:versionName="1.0">
  
  <uses-permission android:name="android.permission.INTERNET" />
  <uses-permission android:name="com.android.vending.BILLING" />
  
  <uses-feature android:name="android.hardware.gamepad" android:required="true"/>
  <uses-feature android:name="android.software.leanback" android:required="true" />

  <uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
  <uses-feature android:name="android.hardware.faketouch" android:required="false"/>
  <uses-feature android:name="android.hardware.telephony" android:required="false"/>
  <uses-feature android:name="android.hardware.camera" android:required="false"/>
  <uses-feature android:name="android.hardware.bluetooth" android:required="false"/>
  <uses-feature android:name="android.hardware.nfc" android:required="false"/>
  <uses-feature android:name="android.hardware.location.gps" android:required="false"/>
  <uses-feature android:name="android.hardware.microphone" android:required="false"/>
  <uses-feature android:name="android.hardware.sensor" android:required="false"/>
  
  <application 
        android:icon="@drawable/app_icon"
        android:banner="@drawable/banner" 
        android:label="@string/app_name" 
        android:debuggable="true" 
        android:isGame="true">
    
    <meta-data android:name="isGame" android:value="true" />
    
   <activity android:name="com.unity3d.player.UnityPlayerNativeActivity" android:label="@string/app_name">
  
      <meta-data android:name="unityplayer.UnityActivity" android:value="true" />
      
          <intent-filter>
      <action android:name="android.intent.action.MAIN" />
      <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
    </intent-filter>
    
  </activity>
    
</application>
</manifest>

 

Note: remember to add a banner.jpg to Plugins/Android/res/drawable-xhdpi/  (if you're on Unity 4.6.X)

Comment