【问题标题】:Android: App can't be found from TabletsAndroid:无法从平板电脑中找到应用
【发布时间】:2013-12-04 06:55:38
【问题描述】:

应用程序上传到 Google 市场后,我观察到,无法从平板电脑上找到它。 我在谷歌上搜索过 minsdk 和 xlarge 屏幕,但应用程序仍然不可见。还有什么可以做的?应用程序是在 Qt 5.1 for Android 上制作的 - 这可能会以某种方式影响我吗?

这是我更新的清单:

<?xml version='1.0' encoding='utf-8'?>
<manifest package="qqq.qqq" android:versionName="1.11" android:versionCode="11" xmlns:android="http://schemas.android.com/apk/res/android">
    <application android:name="org.qtproject.qt5.android.bindings.QtApplication" android:label="@string/app_name" android:icon="@drawable/icon">
        <activity android:configChanges="orientation|locale|fontScale|keyboard|keyboardHidden|screenSize" android:name="org.qtproject.qt5.android.bindings.QtActivity" android:label="@string/app_name" android:launchMode="singleTask" android:hardwareAccelerated="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
            <meta-data android:name="android.app.qt_sources_resource_id" android:resource="@array/qt_sources"/>
            <meta-data android:value="@string/repository" android:name="android.app.repository"/>
            <meta-data android:name="android.app.qt_libs_resource_id" android:resource="@array/qt_libs"/>
            <meta-data android:name="android.app.bundled_libs_resource_id" android:resource="@array/bundled_libs"/>
            <meta-data android:value="lasercad" android:name="android.app.lib_name"/>
            <!-- Deploy Qt libs as part of package -->
            <meta-data android:value="1" android:name="android.app.bundle_local_qt_libs"/>
            <meta-data android:name="android.app.bundled_in_lib_resource_id" android:resource="@array/bundled_in_lib"/>
            <meta-data android:name="android.app.bundled_in_assets_resource_id" android:resource="@array/bundled_in_assets"/>
            <!-- Run with local libs -->
            <meta-data android:value="1" android:name="android.app.use_local_qt_libs"/>
            <meta-data android:value="/data/local/tmp/qt/" android:name="android.app.libs_prefix"/>
            <meta-data android:value="plugins/platforms/android/libqtforandroid.so:libs/libgnustl_shared.so:" android:name="android.app.load_local_libs"/>
            <meta-data android:value="jar/QtAndroid-bundled.jar:" android:name="android.app.load_local_jars"/>
            <meta-data android:value=":" android:name="android.app.static_init_classes"/>
            <!--  Messages maps -->
            <meta-data android:value="@string/ministro_not_found_msg" android:name="android.app.ministro_not_found_msg"/>
            <meta-data android:value="@string/ministro_needed_msg" android:name="android.app.ministro_needed_msg"/>
            <meta-data android:value="@string/fatal_error_msg" android:name="android.app.fatal_error_msg"/>
            <!--  Messages maps -->
        </activity>
        <activity android:name="org.j2cpp.CameraTest" android:label="@string/app_name"/>
        <activity android:name="org.qtproject.qt5.android.bindings.StartJavaActivity" android:label="@string/app_name">
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT"/>
            </intent-filter>
        </activity>
        <activity android:name="org.qtproject.qt5.android.bindings.PhotoIntentActivity" android:label="@string/app_name"/>
        <activity android:name="org.qtproject.qt5.android.bindings.SettingsActivity" android:label="@string/app_name">
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.PREFERENCE"/>
            </intent-filter>
        </activity>
    </application>
    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="15"/>
    <supports-screens android:resizeable="true" android:smallScreens="true" android:largeScreens="true" android:normalScreens="true" android:xlargeScreens="true" android:anyDensity="true"/>
    <uses-permission android:name="android.permission.BLUETOOTH" android:required="false" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:required="false" />
    <uses-permission android:name="android.permission.CAMERA" android:required="false" />
    <uses-permission android:name="android.permission.INTERNET" android:required="false" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" android:required="false" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:required="false" />
</manifest>

更新: 这是我的 apk 文件的 aapt 结果:

C:\src\Android\sdk\build-tools\17.0.0>aapt.exe dump badging C:\p4\views\AndroidLaser\Src\android\bin\Lasercad-debug.apk
package: name='lasercad.mobile' versionCode='11' versionName='1.11'
application-label:'Lasercad'
application-label-fa:'Lasercad'
application-label-ja:'Lasercad'
application-label-nb:'Lasercad'
application-label-id:'Lasercad'
application-label-de:'Lasercad'
application-label-el:'Lasercad'
application-label-nl:'Lasercad'
application-label-pl:'Lasercad'
application-label-ro:'Lasercad'
application-label-fr:'Lasercad'
application-label-es:'Lasercad'
application-label-ms:'Lasercad'
application-label-rs:'Lasercad'
application-label-et:'Lasercad'
application-label-it:'Lasercad'
application-label-ru:'Lasercad'
application-label-zh_CN:'Lasercad'
application-label-pt_BR:'Lasercad'
application-label-zh_TW:'Lasercad'
application-icon-120:'res/drawable-ldpi/icon.png'
application-icon-160:'res/drawable-mdpi/icon.png'
application-icon-240:'res/drawable-hdpi/icon.png'
application: label='Lasercad' icon='res/drawable-mdpi/icon.png'
application-debuggable
launchable-activity: name='org.qtproject.qt5.android.bindings.QtActivity'  label='Lasercad' icon=''
sdkVersion:'10'
targetSdkVersion:'15'
uses-permission:'android.permission.BLUETOOTH'
uses-permission:'android.permission.BLUETOOTH_ADMIN'
uses-permission:'android.permission.CAMERA'
uses-permission:'android.permission.INTERNET'
uses-permission:'android.permission.RECORD_AUDIO'
uses-permission:'android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission:'android.permission.READ_EXTERNAL_STORAGE'
uses-implied-permission:'android.permission.READ_EXTERNAL_STORAGE','requested WRITE_EXTERNAL_STORAGE'
uses-feature:'android.hardware.camera'
uses-feature:'android.hardware.camera.autofocus'
uses-implied-feature:'android.hardware.camera.autofocus','requested android.permission.CAMERA permission'
uses-feature:'android.hardware.bluetooth'
uses-implied-feature:'android.hardware.bluetooth','requested android.permission.BLUETOOTH or android.permission.BLUETOOTH_ADMIN permission and targetSdkVersion> 4'
uses-feature:'android.hardware.microphone'
uses-implied-feature:'android.hardware.microphone','requested android.permission.RECORD_AUDIO permission'
uses-feature:'android.hardware.touchscreen'
uses-implied-feature:'android.hardware.touchscreen','assumed you require a touch screen unless explicitly made optional'
main
other-activities
supports-screens: 'small' 'normal' 'large' 'xlarge'
supports-any-density: 'true'
locales: '--_--' 'fa' 'ja' 'nb' 'id' 'de' 'el' 'nl' 'pl' 'ro' 'fr' 'es' 'ms' 'rs' 'et' 'it' 'ru' 'zh_CN' 'pt_BR' 'zh_TW'
densities: '120' '160' '240'
native-code: 'armeabi' 'armeabi-v7a'

【问题讨论】:

    标签: android manifest qt5


    【解决方案1】:

    确保您已将 Activity 添加到您的 Manifest.xml 中,并且在清单模式和活动节点中使用包名称正确

    【讨论】:

      【解决方案2】:

      确保你在做正确的事情

      uses-feature

      uses-permission

      有时您可能会请求功能(或通过权限隐式需要某些功能),例如手机/gps 等,这些功能通常不会在平板电脑上配备。

      最佳实践应该是

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

      【讨论】:

      • 在这种情况下 - 它如何在具有此类武装功能的平板电脑上正常工作?另外 - 在用户功能和用户权限中,我正在做正确的事情,因为通常可以通过手机从 Marked 下载和安装应用程序。问题出在平板电脑优化的某个地方,可能
      • 我不太明白你的评论。您可以请求 GPS 等功能,并且某些 3G 平板电脑确实安装了 GPS。这是一个常见问题,我过去在没有 GPS 的情况下无法在平板电脑上找到 facebook 和 twitter,他们已通过将清单更改为“使用该功能但不'要求该功能是强制性的'”来解决此问题。
      • 哦,我现在明白你的意思了。这种“使用特性而不是‘要求特性强制’”如何实现?
      • 可悲的是,即使删除此使用功能也无济于事。清单中可能还有其他问题吗?
      • 您的清单 xml 文件的全部内容是否已发布在您的问题中?您是否尝试过检查所有使用的功能以及权限声明可能隐含请求的功能?
      猜你喜欢
      • 2014-09-29
      • 2012-01-19
      • 1970-01-01
      • 2014-03-25
      • 1970-01-01
      • 2015-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多