2016-03-23 10 views
3

Ich habe eine Android-Anwendung und AAR-Bibliothek, die von der Anwendung verwendet wird. Für Version < = 22 war alles in Ordnung. Jetzt möchte ich meine Anwendung und Bibliothek mit Marshmallow arbeiten. Jetzt, um die Berechtigung für Standorte zu erhalten, muss meine Anwendung die Berechtigungen mit ActivityCompact.requestPermissions anfordern.Beantragung der Erlaubnis in AAR für Marshmallow

Ich möchte die Erlaubnis in der AAR anfordern und Anwendung frei von kümmern über die Berechtigungen. Also, wenn ich eine Bibliothek (AAR) -Methode sage XYZ() aus der Anwendung, möchte ich die Erlaubnis für ACCESS_COARSE_LOCATION anfordern.

private void Xyz(){ 
    if(Build.VERSION > 22){ 
    //Request permission. 
    }else{ 

    } 
} 

Anforderung anfordern mit ActivityCompact.requestPermission erforderlich Aktivität als erstes Argument. Mein AAR enthält keine Aktivität. Außerdem kann ich nicht den Aktivitätskontext übergeben, da die Anwendung Xyz() auch aus der Nicht-Aktivitätsklasse aufrufen kann.

Kann ich in meinem AAR eine Genehmigung beantragen, wenn keine Aktivität verfügbar ist?

Antwort

1

Kann ich in meinem AAR eine Genehmigung beantragen, wenn keine Aktivität verfügbar ist?

Nr

+0

Warum? Sie vergessen, dass es Fragmente gibt, die auch um die Berechtigungen kümmern können. – RexSplode

+0

@RexSplode: Ja, aber dann ist eine Aktivität verfügbar: die, die das Fragment hostet. Aufgrund der Frage müssen wir davon ausgehen, dass keine Aktivitäten oder Fragmente verfügbar sind. – CommonsWare

0

können Sie verlangen, Berechtigungen Fragmente als Argument und auf diese Methode verwendet, aber es wird auch in entweder am Ende einschließlich Fragmente (und damit die Aktivität) in Ihr AAR oder Anfordern des Fragments als ein Argument für Ihre Methode.

Verwandte Themen