Android Manifest - 设备兼容性列表,缺少 Galaxy S2
我一直在准备发布我的应用程序,但遇到了设备兼容性问题,我只收到了大约 215 种或更少兼容的设备。对我来说最引人注目的是三星 Galaxy S2,现在我已经在这款设备上进行了彻底的测试,它运行得非常好。我想知道这里是否有人可以看到我的清单中可能丢失/导致冲突的任何内容。
注意:在此项目中使用 Unity android 和 OpenFeint。
这些是市场表现得太明显的特征:
屏幕布局:小 正常 大 XLARGE 所需的设备功能 android.hardware.touchscreen
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal" package="com.openfeint.api" android:versionName="1.4.1" android:versionCode="6">
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"
android:resizeable="true" />
<application android:icon="@drawable/app_icon" android:label="@string/app_name" android:debuggable="false">
<activity android:name="com.unity3d.player.UnityPlayerActivity" android:label="@string/app_name" android:configChanges="keyboardHidden|orientation" 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="com.unity3d.player.VideoPlayer" android:label="@string/app_name" android:configChanges="keyboardHidden|orientation">
</activity>
<activity android:name="com.openfeint.internal.ui.IntroFlow"
android:label="IntroFlow"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
<activity android:name="com.openfeint.api.ui.Dashboard"
android:label="Dashboard"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
<activity android:name="com.openfeint.internal.ui.Settings"
android:label="Settings"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
<activity android:name="com.openfeint.internal.ui.NativeBrowser"
android:label="NativeBrowser"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
</application>
<uses-feature android:glEsVersion="0x00010001" />
<uses-feature android:name="android.hardware.screen.landscape" android:required="false"/>
<uses-feature android:name="android.hardware.touchscreen.multitouch" android:required="false"/>
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="9" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.GET_TASKS"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
</manifest>
I've been preparing to publish my app but i've been running into a device compatibility issue where i've only been recieveing around 215 devices or less compatible. The most noticable one for me is the Samsung Galaxy S2, now i've tested thoroughly on this device and it works perfectly. I was wondering if anyone here could see anything in my manifest that might be missing/causing a conflict.
Note: Using Unity android and OpenFeint with this project.
These are the features that the market only display too apparently:
Screen layouts: SMALL NORMAL LARGE XLARGE Required device features
android.hardware.touchscreen
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal" package="com.openfeint.api" android:versionName="1.4.1" android:versionCode="6">
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"
android:resizeable="true" />
<application android:icon="@drawable/app_icon" android:label="@string/app_name" android:debuggable="false">
<activity android:name="com.unity3d.player.UnityPlayerActivity" android:label="@string/app_name" android:configChanges="keyboardHidden|orientation" 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="com.unity3d.player.VideoPlayer" android:label="@string/app_name" android:configChanges="keyboardHidden|orientation">
</activity>
<activity android:name="com.openfeint.internal.ui.IntroFlow"
android:label="IntroFlow"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
<activity android:name="com.openfeint.api.ui.Dashboard"
android:label="Dashboard"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
<activity android:name="com.openfeint.internal.ui.Settings"
android:label="Settings"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
<activity android:name="com.openfeint.internal.ui.NativeBrowser"
android:label="NativeBrowser"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="landscape"/>
</application>
<uses-feature android:glEsVersion="0x00010001" />
<uses-feature android:name="android.hardware.screen.landscape" android:required="false"/>
<uses-feature android:name="android.hardware.touchscreen.multitouch" android:required="false"/>
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="9" />
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.GET_TASKS"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
</manifest>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
前面的答案不正确 - 您不能在使用权限中使用 required="false",它必须在使用功能中。手机状态如下:
更多信息请参见:http ://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions
The previous answer is not correct - you cant use required="false" in uses-permission, it has to be in uses-feauture. Like this for phone state:
More about this in here: http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions
READ_PHONE_STATE 会导致 Android Market 在某些平板电脑上被过滤,请尝试
READ_PHONE_STATE will cause Android Market filtering on some tablets, try