简体   繁体   English

某些设备上的Android应用未显示在Play商店中

[英]Android app not showing up in play store on some devices

So I published my first app to the play store a few days ago. 所以我几天前在Play商店发布了我的第一个应用程序。

It shows up here and when I search on the website shows up in the search result result Even says it is compatible with my phone on that page. 它显示在这里,当我在网站上搜索时显示在搜索结果结果中甚至表示它与该页面上的手机兼容。

However when I search in the store on my phone it does not show up. 但是,当我在手机上搜索商店时,它不显示。 Someone with a Galaxy S2 says it shows up and someone with a galaxy S3 says it doesn't. 有银河S2的人说它出现了,有人用星系S3表示没有。 So mixed results there. 那里的结果好坏参半。 Manifest.xml is here Manifest.xml在这里

I used mono-droid to build the app, is it possible that that has anything to do with it? 我使用mono-droid来构建应用程序,它可能与它有什么关系吗?

Grtz Grtz

I just had the same problem. 我刚遇到同样的问题。 My app would appear in the play store on my phone but when I searched via a tablet I couldn't see it. 我的应用程序将出现在手机上的Play商店中,但是当我通过平板电脑搜索时,我看不到它。 For me, the tactical answer was that I had not declared any explicity - I had simply added and hoped for the best. 对我来说,战术上的答案是我没有宣布任何明确的 - 我只是简单地补充并希望最好。 Turns out that the also implicitly adds a feature requirement for camera "autofocus" - which I don't care a lick about... and my tablet didn't support. 事实证明,这也隐含地增加了相机“自动对焦”的功能要求 - 我不在乎......我的平板电脑不支持。

This required me to add an explicit "uses-feature" that turns off the camera requirement: 这要求我添加一个明确的“使用功能”来关闭相机要求:

The more important thing is that the sdk comes with this command: 更重要的是sdk带有这个命令:

/sdk/build-tools/android-4.3/aapt /sdk/build-tools/android-4.3/aapt

Which you call like this to get the play store's filtering rules on an .apk 您可以这样调用以获取Play商店的.apk过滤规则

./aapt dump badging [my.apk] ./aapt dump badging [my.apk]

Then - you go to the app store on your offending device and install something like Android System Information and look at the "features" of the device. 然后 - 你去攻击设备上的应用程序商店并安装Android系统信息之类的东西,然后查看设备的“功能”。 If your .apk asserts it wants something that isn't on the device's list - that's your problemo. 如果你的.apk断言它想要一些不在设备列表中的东西 - 那就是你的问题。

check your manifest file contain support screens all screens value true like below code: 检查您的清单文件包含支持屏幕所有屏幕值如下代码:

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

There are two permission that usually give us problems: 有两个权限通常会给我们带来问题:

<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-permission android:name="android.permission.CALL_PHONE" />

The first one uses a camera function that some tablets and smarthphones wont have. 第一个使用相机功能,一些平板电脑和智能手机没有。 The second uses the phone function, which non-phone devices (tablets) won't have. 第二种使用手机功能,非手机设备(平板电脑)不具备。

To solve this you must add this to your manifest: 要解决此问题,您必须将其添加到清单中:

<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-feature android:name="android.hardware.telephony" android:required="false" />
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />

Uses-feature has a higher "permission level" them user-permission, so use use hardware.telephone but with required false, which means non-phone devices can install de app. 使用功能对用户权限具有更高的“权限级别”,因此使用hardware.telephone但需要使用false,这意味着非手机设备可以安装de app。

The same for camera.autofocus, its request, but it will not prevent the device from installing the app (required=false) 对于camera.autofocus,它的请求也一样,但它不会阻止设备安装应用程序(required = false)

Just remember that if you start an call intent on a non-phone device it will crash, you must use a try catch for these functions. 请记住 ,如果您在非电话设备上启动呼叫意图它将崩溃,您必须使用try catch来实现这些功能。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM