找出SmartPhone支持的使用权限

时间:2013-06-18 21:46:48

标签: android google-play

我正在做一个小型的Android应用程序,必须在几个华为U8180(预算2.2 Android设备)上运行。

我已经在Google Play上发布了该应用,即使控制台显示该应用支持该模型,它也不会出现在Play商店应用中,或者在尝试通过浏览器安装应用时说设备不受支持。

实际上,它是一个非常简单的应用程序,我在其中进行了整个调试,但它只是不会在手机上显示或安装!

要求如下:

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

如何找出哪些<uses-permision>或其他可能阻止应用在手机上展示和安装的内容?

LINKS:

该应用(正在进行中):https://play.google.com/store/apps/details?id=com.cimp.matitec&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS5jaW1wLm1hdGl0ZWMiXQ

华为U8180:http://www.gsmarena.com/huawei_u8180_ideos_x1-4204.php

编辑:这是清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.cimp.matitec"
android:versionCode="4"
android:versionName="1.0.0.3" 
>

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

<supports-screens  
    android:smallScreens="true"
    android:normalScreens="true"
    android:largeScreens="true"    
    android:resizeable="true"
    android:anyDensity="true"/>

<application
    android:icon="@drawable/logo_matitec"
    android:label="@string/app_name"
    android:name=".MatiTecApplication"
    android:theme="@style/Theme.MatiTec"
    android:allowBackup="true">
    <activity
        android:name=".DbTemas"
        android:label="@string/app_name"
        android:screenOrientation="portrait" >
    </activity>
    <activity 
        android:name=".Tema"
        android:screenOrientation="portrait" >
    </activity>
    <activity 
        android:name=".Modulos"
        android:screenOrientation="portrait" >
    </activity>
    <activity android:name=".social" 
        android:theme="@style/Theme.MatiTecBG"
        android:screenOrientation="portrait"
        ></activity>
    <activity android:name=".NewsFeed"
         android:theme="@style/Theme.MatiTecBG"
         android:screenOrientation="portrait"
         ></activity>
    <activity
        android:name=".Perfil"
        android:screenOrientation="portrait" >
    </activity>
    <activity 
        android:name=".Estadisticas"
        android:screenOrientation="portrait" >
    </activity>
    <activity android:name=".Login"
        android:noHistory="true"
        android:theme="@style/Theme.Matitec_login"
        android:screenOrientation="portrait" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity 
        android:name=".Lecturas"
        android:screenOrientation="portrait"
        android:theme="@style/list">
    </activity>
    <activity
        android:name=".Ejercicio"
        android:screenOrientation="portrait">
    </activity>
    <activity 
        android:name=".EjercicioDinamico"
        android:screenOrientation="portrait" >
    </activity>
    <activity 
        android:name=".ModulosEjercicios"
        android:screenOrientation="portrait" >
    </activity>
</application>

编辑2:从浏览器打开应用程序条目时的Logcat输出,有一些关于restriction = 9

的内容
I/ActivityManager(  129): Displayed activity com.android.vending/com.google.android.finsky.activities.MainActivity: 320 ms (total 320 ms)
D/Finsky  (  508): [1] SelfUpdateScheduler.checkForSelfUpdate: Skipping DFE self-update. Local Version [80210006] >= Server Version [-1]
E/Finsky  (  508): [24] ElegantGoogleAuthUtil.ensurePlayServicesAvailable: GooglePlayServices is not available.
I/ElegantRequestDirector(  508): I/O exception (org.apache.http.NoHttpResponseException) caught when processing request: The target server failed to respond
D/PlayEventLogger(  508): ActiveExperiments changed, sending with next LogEvent
I/ElegantRequestDirector(  508): Retrying request
D/Finsky  (  508): [1] LibraryUtils.isAvailable: com.cimp.matitec not available [restriction=9].
D/Finsky  (  508): [1] DocUtils.getAvailabilityRestrictionResourceId: Item is not available. Reason: 9
D/Finsky  (  508): [1] DetailsDataBasedFragment.rebindViews: Page [class=DetailsFragment] loaded in [1087 ms] (hasDetailsDataLoaded? false)
D/Finsky  (  508): [1] LibraryUtils.isAvailable: com.cimp.matitec not available [restriction=9].
D/Finsky  (  508): [1] LibraryUtils.isAvailable: com.cimp.matitec not available [restriction=9].
D/QCRIL_MSC (   76): "RIL"=>"AMSS" [ label = "cm_ph_cmd_get_ph_info()"];
W/Finsky  (  508): [1] HistogramView.bind: No histogram data received from server
D/Finsky  (  508): [1] LibraryUtils.isAvailable: com.cimp.matitec not available [restriction=9].
D/Finsky  (  508): [1] DocUtils.getAvailabilityRestrictionResourceId: Item is not available. Reason: 9
D/Finsky  (  508): [1] DetailsDataBasedFragment.rebindViews: Page [class=DetailsFragment] loaded in [1490 ms] (hasDetailsDataLoaded? true)
V/StkAppReceiver(  565): start to check load situation:==true
V/StkAppReceiver(  565): continue action
V/StatusBarPolicy(  129): getPPPoEDeskTopIcon() mCplusWStatus= -1
D/Volley  (  508): [13] BasicNetwork.logSlowRequests: HTTP response for request=<[ ] https://android.clients.google.com/fdfe/log 0xe8d195d1 NORMAL 41> [lifetime=3491], [size=8], [rc=200], [retryCount=0]
I/Resources(  508): Loaded time zone names for en_US in 641ms.
D/Volley  (  508): [1] Request.finish: 4171 ms: [ ] https://android.clients.google.com/fdfe/log 0xe8d195d1 NORMAL 41
V/StatusBarPolicy(  129): getPPPoEDeskTopIcon() mCplusWStatus= -1
V/StkAppReceiver(  565): start to check load situation:==true
V/StkAppReceiver(  565): continue action

4 个答案:

答案 0 :(得分:3)

我想权限可能不是问题。这些或多或少是每个应用程序今天想拥有的标准权限。还有其他一些由Google Playstore过滤的内容:

  • <supports-screens>
  • <uses-configuration>
  • <uses-feature>
  • <uses-library>
  • <uses-permission>
  • <uses-sdk>

来自doku here

检查Manifest文件是否有特殊内容。

也许这可能会有所帮助:

<supports-screens  
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"    
android:resizeable="true"
android:anyDensity="true"/>

答案 1 :(得分:1)

这有点旧,但您是否尝试过这个问题的解决方案?

My Android App shows as "this item is not compatible with your device"

具体来说,您的应用是否需要设备上的任何先决条件(gapps或其他)?

您是否以某种方式使用旧的开发人员控制台界面? 如果是这样,你打开了“复制保护功能”吗?这过去曾经引起过这种问题。

答案 2 :(得分:1)

您的最低API级别要求实际为8吗?因为它是一个如此简单的应用程序,您可能希望尝试将该级别降低到7,如果您可以管理它甚至更低。可能只是最低API要求是过滤您的应用程序的设备。

尝试在2.2.X之前的模拟器中测试你的应用程序,看看它是否会在没有崩溃的情况下运行,如果是这样,请将版本降低并在Android版本中测试它直到它崩溃,然后设置你的{{ 1}}到那个API级别..

编辑:检查Android开发者网站上的“过滤器”页面可能是值得的:

http://developer.android.com/google/play/filters.html

答案 3 :(得分:0)

如果设备不支持任何功能,请使用此语句 -

<uses-feature android:name="android.hardware.location.network" android:required="false" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:required="false"/>
清单中的