Android应用和兼容性

时间:2016-02-28 23:01:17

标签: android android-sdk-tools

Android项目的哪些部分会使设备不兼容?

我的第一个项目已经发布,而且非常简单。它仅适用于Google Play上的6880设备。

我女朋友的手机不兼容,但是当我通过.apk文件直接安装时,她总是使用这个应用程序。

清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="my.project" android:installLocation="auto" android:versionCode="1" android:versionName="1.0">
  <application android:label="AppName" android:icon="@drawable/icon" android:allowBackup="true" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:hardwareAccelerated="true">
    <activity android:name="my.project.AppName" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mnc|mcc|locale|fontScale|uiMode" android:label="Credito">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
  </application>
  <!-- Android 2.3.3 -->
  <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="14" />
  <!-- OpenGL ES 2.0 -->
  <uses-feature android:glEsVersion="0x00020000" />
  <!-- USB support -->
  <uses-feature android:name="android.hardware.usb.host" />
  <!-- Disable screen compatibility modes -->
  <supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" />

  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

</manifest>

1 个答案:

答案 0 :(得分:1)

jQuery: How can I trigger an event when a div comes into view?中描述的设备兼容性。一般来说,它包括3个部分: *设备功能; *平台版本 *屏幕配置;

根据你的清单,有下一个可能的问题:

  1. &#34; android.hardware.usb.host&#34; - 应用需要一台保证支持USB主机API的设备。根据{{​​3}}:
  2. 由于并非所有Android设备都能保证支持USB主机API,因此请使用&#34; uses-feature&#34;声明您的应用程序使用android.hardware.usb.host功能的元素。

    这基本上意味着应用甚至可以在手机上工作(例如直接安装),直到调用此类API为止。

    1. 机器人:的minSdkVersion =&#34; 9&#34;机器人:targetSdkVersion =&#34; 14&#34;
    2. 你女朋友的手机早于Android 2.3.3(如2.2)吗?而且,这并不意味着它不会起作用,只是意味着如果在Android 2.3之前调用任何不存在的方法,它可能会失败。

      1. uses-feature android:glEsVersion =&#34; 0x00020000&#34;
      2. 这应该不是问题,因为:

        OpenGL ES 2.0 - Android 2.2(API级别8)及更高版本支持此API规范。

        1. 屏幕分辨率也不应成为问题,因为您已经打开了所有4种可能的主要分辨率。