使用Phonegap构建服务器构建的应用程序不显示平板电脑 - Android Manifest更新

时间:2013-07-29 14:43:40

标签: android cordova android-manifest google-play phonegap-build

所以我使用Phonegap构建服务器构建了一个应用程序。但是,它不会生成谷歌游戏商店认为平板电脑准备好的APK。我已成功解除了应用程序并重新编译了它,但似乎无论我在Manifest中添加了哪些其他信息,它都不会影响我的应用程序可以下载的设备。以下是清单。

<?xml version="1.0" encoding="utf-8"?>
<manifest android:versionCode="13425" android:versionName="2.1"     android:windowSoftInputMode="adjustPan" android:installLocation="internalOnly" package="com.QSPV78GLVZ.eQuest2"
 xmlns:android="http://schemas.android.com/apk/res/android">
 <supports-screens android:anyDensity="true" android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:resizeable="true" android:xlargeScreens="true" />
 <uses-sdk android:minSdkVersion="7"
android:targetSdkVersion="17"  />
<compatible-screens>
<!--no small size screens -->

<!--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" />

<!-- all large size screens -->
<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" />

<!-- all xlarge size screens -->
<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" />

<!-- Special case for Nexus 7 -->
<screen android:screenSize="large" android:screenDensity="213" />
</compatible-screens>
<uses-permission android:name="android.permission.INTERNET" />
<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.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.RECORD_VIDEO" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application android:label="@string/app_name" android:icon="@drawable/icon" android:debuggable="true" android:hardwareAccelerated="true">
<activity android:label="@string/app_name" android:name=".eQuest" android:screenOrientation="unspecified" android:configChanges="keyboardHidden|orientation">
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>
<activity android:label="@string/app_name" android:name="com.phonegap.DroidGap">
  <intent-filter />
</activity>
</application>
</manifest>

感谢您花时间阅读我的帖子。

1 个答案:

答案 0 :(得分:1)

我打赌你有权限问题。以下是尝试修改的内容,并查看平板电脑是否显示为选项。如果平板电脑没有特定的硬件功能,则如果您在列表中拥有该功能,则不会显示该功能(无需修改)。例如,如果Nexus 7没有麦克风,那么“record_audio”权限将阻止它在商店上可用,直到添加这样的行....

所以基本上你需要检查每个权限,并确定这些权限工作所需的硬件,以及 添加如上所述的行让清单知道它不是必需的(required =“false”)

使用此列表@ http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permissions

并转到名为“隐含功能要求的权限”的区域

我们假设我们支持的所有平板电脑至少有一台摄像头,并且

因此我们不需要添加

这将排除所有缺少相机的设备找不到应用

我们需要为位置函数添加这些行,因为我们希望用户在存在时使用它们,但不需要它。

录制音频需要此行

另外,这是我找到的相关主题

How to make android Phonegap available for tablets?