我刚刚创建使用PhoneGap的Android应用程序并将其部署到店里。它只是显示一个网站的内容。我遇到的问题是,这个应用程序是可见的移动设备而已,不是平板电脑,即使在清单文件中包括这样的:
<兼容屏>
<! - 所有的小尺寸屏幕 - >
<屏幕的Android:屏幕大小=小机器人:screenDensity =LDPI/>
<屏幕的Android:屏幕大小=小机器人:screenDensity =MDPI/>
<屏幕的Android:屏幕大小=小机器人:screenDensity =华电国际/>
<屏幕的Android:屏幕大小=小机器人:screenDensity =xhdpi/>
<! - 一切正常尺寸的屏幕 - >
<屏幕的Android:屏幕大小=正常的Android版本:screenDensity =LDPI/>
<屏幕的Android:屏幕大小=正常的Android版本:screenDensity =MDPI/>
<屏幕的Android:屏幕大小=正常的Android版本:screenDensity =华电国际/>
<屏幕的Android:屏幕大小=正常的Android版本:screenDensity =xhdpi/>
<屏幕的Android:屏幕尺寸=大片机器人:screenDensity =LDPI/>
<屏幕的Android:屏幕尺寸=大片机器人:screenDensity =MDPI/>
<屏幕的Android:屏幕尺寸=大片机器人:screenDensity =华电国际/>
<屏幕的Android:屏幕尺寸=大片机器人:screenDensity =xhdpi/>
<屏幕的Android:屏幕尺寸=XLARGE机器人:screenDensity =LDPI/>
<屏幕的Android:屏幕尺寸=XLARGE机器人:screenDensity =MDPI/>
<屏幕的Android:屏幕尺寸=XLARGE机器人:screenDensity =华电国际/>
<屏幕的Android:屏幕尺寸=XLARGE机器人:screenDensity =xhdpi/>
< /兼容屏>
我不知道该怎么办。我测试上的平板电脑是宏碁A100 7,运行Android版本4.0.3。
更新
下面是清单文件:
<舱单的xmlns:机器人=http://schemas.android.com/apk/res/android
包=com.rakoty.rakoty
安卓版code =1
机器人:VERSIONNAME =1.0>
<用途-SDK
安卓的minSdkVersion =8
机器人:targetSdkVersion =15/>
<支持屏
机器人:largeScreens =真
机器人:normalScreens =真
机器人:smallScreens =真
机器人:调整大小=真
机器人:anyDensity =真/>
<使用-权限的Android:名称=android.permission.VIBRATE/>
<使用-权限的Android:名称=android.permission.VIBRATE/>
<使用-权限的Android:名称=android.permission.ACCESS_COARSE_LOCATION/>
<使用-权限的Android:名称=android.permission.ACCESS_FINE_LOCATION/>
<使用-权限的Android:名称=android.permission.ACCESS_LOCATION_EXTRA_COMMANDS/>
<使用-权限的Android:名称=android.permission.READ_PHONE_STATE/>
<使用-权限的Android:名称=android.permission.INTERNET对/>
<使用-权限的Android:名称=android.permission.RECEIVE_SMS/>
<使用-权限的Android:名称=android.permission.RECORD_AUDIO/>
<使用-权限的Android:名称=android.permission.MODIFY_AUDIO_SETTINGS/>
<使用-权限的Android:名称=android.permission.READ_CONTACTS/>
<使用-权限的Android:名称=android.permission.WRITE_CONTACTS/>
<使用-权限的Android:名称=android.permission.WRITE_EXTERNAL_STORAGE/>
<使用-权限的Android:名称=android.permission.ACCESS_NETWORK_STATE/>
<使用-权限的Android:名称=android.permission.GET_ACCOUNTS/>
<使用-权限的Android:名称=android.permission.BROADCAST_STICKY/>
<使用-权限的Android:名称=android.permission.BROADCAST_STICKY/>
<兼容屏>
<! - 屏幕部分从上面 - >
< /兼容屏>
<应用
机器人:图标=@可绘制/ ic_launcher
机器人:标签=@字符串/ APP_NAME
机器人:主题=@风格/ AppTheme>
<活动
机器人:configChanges =定位| keyboardHidden |键盘|屏幕尺寸|语言环境
机器人:名称=。MainActivity
机器人:标签=@字符串/ title_activity_main>
<意向滤光器>
<作用机器人:名称=android.intent.action.MAIN/>
<类机器人:名称=android.intent.category.LAUNCHER/>
&所述; /意图滤光器>
< /活性GT;
< /用途>
< /舱单>
解决方案
根据我可以在Play商店看到,你有你的清单中的 RECORD_AUDIO
许可。默认情况下,意味着该设备必须具有一个麦克风,和一些片剂不会。考虑加入:
<使用特征的android:NAME =android.hardware.microphone机器人:要求=FALSE/>
同样,你还可以使用 RECEIVE_SMS
权限,默认情况下需要设备具有电话功能,而大多数平板电脑没有。请考虑增加:
<使用特征的android:NAME =android.hardware.telephony机器人:要求=FALSE/>
等等。
我建议你说明进行比较的文档中的权限来看看还有什么你可能需要添加:的http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions
I just created an Android application using Phonegap and deployed it to the store. It simply shows the content of a website. The problem I'm having is this application is visible to Mobile devices only, not tablets, even after including this in the manifest file:
<compatible-screens>
<!-- all small size screens -->
<screen android:screenSize="small" android:screenDensity="ldpi" />
<screen android:screenSize="small" android:screenDensity="mdpi" />
<screen android:screenSize="small" android:screenDensity="hdpi" />
<screen android:screenSize="small" android:screenDensity="xhdpi" />
<!-- all normal size screens -->
<screen android:screenSize="normal" android:screenDensity="ldpi" />
<screen android:screenSize="normal" android:screenDensity="mdpi" />
<screen android:screenSize="normal" android:screenDensity="hdpi" />
<screen android:screenSize="normal" android:screenDensity="xhdpi" />
<screen android:screenSize="large" android:screenDensity="ldpi" />
<screen android:screenSize="large" android:screenDensity="mdpi" />
<screen android:screenSize="large" android:screenDensity="hdpi" />
<screen android:screenSize="large" android:screenDensity="xhdpi" />
<screen android:screenSize="xlarge" android:screenDensity="ldpi" />
<screen android:screenSize="xlarge" android:screenDensity="mdpi" />
<screen android:screenSize="xlarge" android:screenDensity="hdpi" />
<screen android:screenSize="xlarge" android:screenDensity="xhdpi" />
</compatible-screens>
I don't know what to do. The tablet I'm testing on is an Acer A100 7", running Android version 4.0.3.
UPDATES
Here is the manifest file:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.rakoty.rakoty"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:resizeable="true"
android:anyDensity="true" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<compatible-screens>
<!-- the screen part from above -->
</compatible-screens>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"
android:name=".MainActivity"
android:label="@string/title_activity_main" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
解决方案
Based on what I can see in the Play Store, you have the RECORD_AUDIO
permission in your manifest. By default, that means that the device has to have a microphone, and some tablets will not. Consider adding:
<uses-feature android:name="android.hardware.microphone" android:required="false" />
Similarly, you have the RECEIVE_SMS
permission, which by default requires the device to have telephony capability, and most tablets do not. Please consider adding:
<uses-feature android:name="android.hardware.telephony" android:required="false" />
And so on.
I recommend that you compare your permissions with the instructions in the documentation to see what else you might need to add: http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions