2014-02-19 49 views
0

我需要我的应用程序在GoogleTV上运行,但不管我对Android清单做什么,GoogleTV设备的很大一部分似乎都不受支持。无论如何要弄清楚我做错了什么或为什么应用程序被拒绝用于特定设备?如果我至少可以在索尼NSZ-GS7/GX70上运行,我会非常高兴。这里是apk的aapt转储的副本。Android Market中与GoogleTV兼容的问题

package: name='HarshMarshmallow.app' versionCode='2' versionName='1.0.1' 
sdkVersion:'11' 
targetSdkVersion:'17' 
uses-feature-not-required:'android.hardware.touchscreen' 
uses-permission:'android.permission.INTERNET' 
uses-permission:'android.permission.ACCESS_NETWORK_STATE' 
uses-permission:'android.permission.ACCESS_WIFI_STATE' 
application-label:'HarshMarshmallow' 
application-icon-120:'res/drawable-ldpi/ic_launcher.png' 
application-icon-160:'res/drawable-mdpi/ic_launcher.png' 
application-icon-240:'res/drawable-hdpi/ic_launcher.png' 
application-icon-320:'res/drawable-xhdpi/ic_launcher.png' 
application-icon-480:'res/drawable-xxhdpi/ic_launcher.png' 
application: label='HarshMarshmallow' icon='res/drawable-mdpi/ic_launcher.png' 
launchable-activity: name='HarshMarshmallow.app.activityMain' label='' icon='' 
uses-feature:'android.hardware.wifi' 
uses-implied-feature:'android.hardware.wifi','requested android.permission.ACCES 
S_WIFI_STATE, android.permission.CHANGE_WIFI_STATE, or android.permission.CHANGE 
_WIFI_MULTICAST_STATE permission' 
uses-feature:'android.hardware.screen.landscape' 
uses-implied-feature:'android.hardware.screen.landscape','one or more activities 
have specified a landscape orientation' 
main 
other-activities 
other-services 
supports-screens: 'small' 'normal' 'large' 'xlarge' 
supports-any-density: 'true' 
locales: '--_--' 
densities: '120' '160' '240' '320' '480' 
native-code: 'armeabi' 'armeabi-v7a' 'mips' 'x86' 

编辑:

这里是我的舱单副本:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="HarshMarshmallow" 
android:versionCode="3" 
android:versionName="1.0.2" > 

<uses-sdk 
    android:minSdkVersion="11" 
    android:targetSdkVersion="17" /> 

<uses-feature android:name="android.hardware.touchscreen" android:required="false"/> 
<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 

<application 
    android:name="applicationGlobalVars" 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@android:style/Theme.Light.NoTitleBar"> 
    <service android:name="com.paypal.android.sdk.payments.PayPalService" android:exported="false"/> 
    <activity android:name="com.paypal.android.sdk.payments.PaymentActivity" /> 
    <activity android:name="com.paypal.android.sdk.payments.LoginActivity" /> 
    <activity  android:name="com.paypal.android.sdk.payments.PaymentMethodActivity" /> 
    <activity android:name="com.paypal.android.sdk.payments.PaymentConfirmActivity" /> 
    <activity 
     android:name="io.card.payment.CardIOActivity" 
     android:configChanges="keyboardHidden|orientation" /> 
    <activity android:name="io.card.payment.DataEntryActivity" /> 
    <activity 
     android:name="HarshMarshmallow.activityMain" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name="activityAddChannel" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
    <activity android:name="activityCurrentChannels" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
    <activity android:name="activityCurrentShows" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
    <activity android:name="activityDeleteFromChannel" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
    <activity android:name="activityLoadingScreen" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"> 
    </activity> 
    <activity android:name="activityMediaPlayer" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
    <activity android:name="activityNameChannel" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
    <activity android:name="activityNetworkSettings" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
    <activity android:name="activityTutorial" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"> 
    </activity> 
    <activity android:name="activityHelp" 
     android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" 
     android:screenOrientation="landscape"></activity> 
</application> 

</manifest> 

编辑2:

所以我刚刚得到的答复回来来自谷歌。

感谢您与Google Play开发者支持部门联系。我们调查了 您报告的行为,并发现您的应用不是与NSZGS7兼容的,因为与以下内容冲突: 指定的本机平台(armeabi,armeabi-v7a,mips,x86) 由设备支持。不幸的是,我们无法提供更详细的分析结果 。

原始平台是否连接到我已包含在我的应用程序中的库,或者是否存在某种我已经忘记关闭的首选项?我正在用ADT使用eclipse。

+0

你的Manifest.xml怎么样? – Jorgesys

+0

添加清单到帖子 – HarshMarshmallow

+0

索尼GoogleTV是在Android 3.2或API级别13 – HarshMarshmallow

回答

1

所以我回到这里来回答这个问题,因为我相信其他人在将来会遇到麻烦。这个问题与aapt转储底部的本地代码行有关。尽管它可能在您的个人Google上运行得很好,但Google声称它在商店中不兼容。

要解决Eclipse中的问题,首先单击您的项目并导航到libs部分。如果本节中的文件夹中有任何内容,则它不适用于GoogleTV。删除文件夹,从构建路径中删除库,然后删除代码和Android清单中的引用(如果有的话)。我的问题来自于包含贝宝库,但这应该是解决这个问题的一般方法。

希望这会有所帮助。记住:

1)你不能与GoogleTV的人像方向

2)你需要补充一点:

<uses-feature android:name="android.hardware.touchscreen" android:required="false"/> 

您androidmanifest

3)你不能有在aapt转储底部的本地代码行。它会导致GoogleTV被过滤

0

某些Sony设备在清单中需要一个uses-library标签。我不确定这是否是其中之一,但您可能需要应用程序标记下的以下内容:

<uses-library android:name="com.sony.tablet" /> 
0

请确保您没有定向代码更改。由于这是一个电视应用程序不能真正使用任何方向的东西。

+0

我需要定位风景,以便始终为应用程序实例化,无论是在手机上还是在GoogleTV上。在清单中声明风景会导致GoogleTV设备停止工作? – HarshMarshmallow

+0

我不确定这一点,我知道我的应用程序,我已经搞乱了清单中的方向,然后谷歌电视不再支持。值得一试。 – reidisaki