I'm having a bit of trouble getting my app to show up in the market under GoogleTV. I've searched google's official documentation and I don't believe the manifest lists any elements which would invalidate the program; the only hardware requirement specified is landscape mode, wakelock and external storage(neither which should cause it to be filtered for GTV according to the documentation) and I set the uses touchscreen elements "required" attribute to false.
below is the AndroidManifest.xml for my project:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.whateversoft"
android:versionCode="2"
android:versionName="0.1" >
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="Color Shafted"
android:theme="@style/Theme.NoBackground"
android:debuggable="false">
<activity
android:label="Color Shafted"
android:name=".colorshafted.ColorShafted"
android:configChanges = "keyboard|keyboardHidden|orientation"
android:screenOrientation = "landscape">
<!-- Set as the default run activity -->
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:label="Color Shafted Settings"
android:name=".colorshafted.Settings"
android:theme="@android:style/Theme"
android:configChanges = "keyboard|keyboardHidden">
<!-- -->
</activity>
</application>
<!-- DEFINE PERMISSIONS FOR CAPABILITIES -->
<uses-permission android:name = "android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name = "android.permission.WAKE_LOCK"/>
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
<!-- END OF PERMISSIONS FOR CAPABILITIES -->
</manifest>
I'm about to start promoting the app after the next major release so its been kind of a bummer since I can't seem to get this to work. Any help would be appreciated, thanks in advance : )
It looks okay to me. one things you might do is watch logcat carefully when you deploy. The ADT plugin doesn't enforce 100% correctness in the manifest. I've found where I've had subtle errors and the only way I noticed was by watching logcat when the app gets deployed.
Here is the official Google IO presentation on the topic,
This page describes how the manifest features effect visibility to google TVs,
https://developers.google.com/tv/android/docs/gtv_androidmanifest