GPS-Manifest: GPS in der App optional ist, wollen Sie zur Verfügung, um GPS-weniger Geräte zu
Auf hochladen meiner App auf dem Markt heute, sah ich, dass es nur für Geräte mit GPS, so schließt diese einige Tabletten.
GPS in meiner Anwendung ist optional. Ist es möglich, die Veröffentlichung einer App für Geräte mit und ohne GPS oder muss ich eine extra version (wäre kein problem, obwohl)?
Wenn es möglich ist, ich denke, es ist eine Art von Methode zu überprüfen, ob(deviceHasGPS()){...}.
Gibt es eine ?
Dies ist der Teil, der mein manifest:
<uses-permission android:name="android.permission.PREVENT_POWER_KEY" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="com.android.vending.CHECK_LICENSE" />
Edit: danke für die Antwort Raghav Sood!
Hinzufügen zu Manifestieren:
<uses-feature android:name="android.hardware.location.gps"
android:required="false" />
Folgende Maßnahmen durchzuführen:
locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
boolean deviceHasGPS = false;
if (locationManager.getAllProviders().contains(LocationManager.GPS_PROVIDER)) {
deviceHasGPS = true;
}
um es zu testen auf einem Gerät mit gps, umgeben Sie die gps-Dinge mit, wenn(deviceHasGPS){...}
entfernen Sie dann in dem manifest:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
set deviceHasGPS immer falsch und sehen, wenn die App Kraft schließt.
- Danke, das funktioniert, solange Sie nicht entfernen Sie die Lage Berechtigungen sind erforderlich für die app zu arbeiten.
- Sie könnten auch
<uses-feature android:name="android.hardware.location" android:required="false" />
und<uses-feature android:name="android.hardware.location.network" android:required="false" />
da einige Geräte haben keinen Ort-service.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie den folgenden, um Ihre manifest -
Das sagt Google Play, dass, während die app auf dem GPS, es ist absolute Voraussetzung, ist nicht wahr. Allerdings sollten Sie Griff das fehlen von GPS in Ihre app ordnungsgemäß, statt ihn Abstürzen.
Überprüfen Sie das Gerät über GPS verfügt, können Sie rufen Sie
LocationManager.getAllProviders()
und überprüfen Sie, obLocationManager.GPS_PROVIDER
in der Liste enthalten ist.