Fehler Appstore verbinden : Fehlende Zweck Strings in der Info.plist-Datei
Die ich eingereicht habe meine app zur Prüfung in den Appstore verbinden. Obwohl sich die app noch in der review, ich habe eine E-Mail um mir mitzuteilen, dass ich einen Fehler behoben. Hier ist der Inhalt der Nachricht :
Dear Developer,
We identified one or more issues with a recent delivery for your
app XXXXX. Your delivery was successful, but you
may wish to correct the following issues in your next delivery:
"Missing Purpose String in Info.plist File. Your app's code
references one or more APIs that access sensitive user data. The
app's Info.plist file should contain a
NSLocationAlwaysUsageDescription key with a user-facing purpose
string explaining clearly and completely why your app needs the
data. Starting spring 2019, all apps submitted to the App Store
that access user data will be required to include a purpose
string.If you're using external libraries or SDKs, they may
reference APIs that require a purpose string. While your app might
not use these APIs, a purpose string is still required. You can
contact the developer of the library or SDK and request they
release a version of their code that doesn't contain the APIs.
After you’ve corrected the issues, you can use Xcode or
Application Loader to upload a new binary to iTunes Connect.
Best regards,
The App Store Team
Meine app ist voll unterkellert mit expo und ich weiß nicht, wie Zugriff auf und ändern Sie die Informationen.plist.
Irgendeine Idee ?
- Ich habe das gleiche Problem mit dem neuesten build, da ich nicht einmal die Location Services in meiner app. Und Apple hat kein offizielles Dokument über diese änderung.
- Gleiche Problem hier, nicht geändert die Info.plist entweder
- Gleiche Problem. Ich habe nur eine winzige Veränderung und eine neue erstellen und bekam diese. Ich habe ein
NSLocationWhenInUseUsageDescription
in der Info.plist, die leer, aber ich habe die übersetzung von strings für Sie. - +1 Habe eine Freigabe für die gleiche app vor 2 Tagen und alles ist fein. 2 Tage später einfach verändert ein paar Zeilen code, um eine neue Version (nicht mehr Hülsen oder so ähnlich) und ich bekam diese Meldung
- Wir haben erlebt das gleiche Problem. Ich vermute, es ist ein Fehler im Genehmigungsprozess (hoffentlich). Ich werde auf ignorieren für das Wochenende und hoffe, dass das fest am Montag.
- Ich Stand vor dem gleichen Problem gerade jetzt, obwohl unsere App nicht wirklich brauchen, Ort-Services Immer. Es muss nur NSLocationWhenInUseUsageDescription, die wir bereits haben einen Zweck-string für. Wahrscheinlich ist dies nur ein Fehler auf der Apple Ende?
- Und im Apple-Mode, den link in der E-Mail, es zu beheben, ist gebrochen.
- Haben wir zu re-archive nach Aktualisierung der info.plist ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie mit Expo können Sie fügen Sie lösen, indem Sie hinzufügen infoPlist app.json etwa so:
Expo Docs
Habe ich einige apps im store und ich habe versucht, die Verteilung einer version für QA und die gleiche Sache passiert in zwei verschiedenen Apps.
Ich denke, das ist eine neue, die Kriterien zu akzeptieren, baut uploads Appstore verbinden.
Die Lösung ist einfach, fügen Sie die folgenden Zeilen in die .plist-Datei.
<key>NSLocationAlwaysUsageDescription</key>
<string>custom message</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>custom message</string>
PS: In meinem Fall haben nicht mit einer Funktion von Lage, aber ich habe diese Zeilen im Einklang mit Appstore verbinden Leitlinien. Btw nach erhalten, E-Mail, ich könnte die app testen, auch wenn Sie sagte, dass es bauen einige Probleme hatte.
Ich hoffe, dass diese Arbeit für Euch.
<key>NSLocationUsageDescription</key>
BEARBEITEN April 2019 : Sie müssen nun fügen Sie diese zwei Tasten, im Frühjahr 2019 begonnen hat. Beachten Sie, dass
NSLocationAlwaysUsageDescription
ist nun veraltet und wurde ersetzt mitNSLocationUsageDescription
.können Sie Ihre app sogar, wenn Sie diese Nachricht !Habe ich gerade vor dem gleichen Problem gestern, auch wenn die app nicht mit der Lage der Funktionalität. Kann es im Zusammenhang mit einigen Rahmenbedingungen in das Projekt aufgenommen, dass diese optionale Funktion.
Ich kann bestätigen, dass meine app genehmigt wurde auch ohne die
NSLocationAlwaysUsageDescription
undNSLocationWhenInUseUsageDescription
Schlüssel ininfo.plist
In der Tat, wie Apple erklärte in der E-mail :
Also das einzige, was zu tun ist das hinzufügen dieses Schlüssels (ist jetzt besser, so dass Sie nicht vergessen werden) in Ihr Projekt, so dass Sie aufgenommen werden, in Ihrem nächsten update.
Fügen Sie einfach zwei neue Einträge in Ihrem
info.plist
mitNSLocationAlwaysUsageDescription
undNSLocationWhenInUseUsageDescription
als Schlüssel und einer kurzen Beschreibung, warum Sie verwenden Sie als Wert (auch wenn Sie nicht wirklich verwenden...).Es ist eine neue Forderung von apple, auch wenn Sie nicht mit der Lage. Wenn Sie möchten, fügen Sie die Berechtigungen in Xcode, suchen Sie nach "Privacy - Location Usage Description" und "Privatsphäre - Standort, Wenn Sie Im Einsatz Verwendung Beschreibung" und geben Sie einen benutzerdefinierten string für jeden von Ihnen.
##Verwenden Sie diese Taste in der info.plist-Datei
NSLocationAlwaysUsageDescription
Ihre Lage ist erforderlich für die xyz-Vorteile für Sie NSLocationWhenInUseUsageDescription
Ihre Lage ist erforderlich für die xyz-Vorteile für Sie
Weitere Vereinfachung können Sie fügen Sie diese Zeilen in Ihrem info.plist. Diese Fehler kommen, weil Ab Frühjahr 2019, alle apps an den App Store übermittelt, der Zugriff auf die user-Daten werden benötigt, um eine Zweck-string.
Fügen Sie die folgenden Zeilen in Ihre plist
Wir haben die gleiche E-Mail und wir nicht mit den CoreLocation überhaupt. Nach einer kurzen Suche, fanden wir, dass Parse SDK verwenden könnte, CoreLocation. In apples E-Mail, dass Sie klar sagen:
Bedeuten, dass die minute, die Sie Ihren code oder jeder anderen Bibliothek oder SDKs verwenden können, CoreLocation, auch wenn Sie es nicht verwenden, Sie benötigen, um Privatsphäre zu bieten Beschreibung für "When In Use" und "Immer".
Ist es auch etwas neues von Apple und für jetzt es ist nur eine Warnung, aber es wird benötigt ab Frühjahr 2019 für neue Veröffentlichungen.
CLLocationManager.requestWhenInUseAuthorization()
genannt wird. Apple analysiert jede app-code zu sehen, wenn eine solche Funktion aufgerufen werden könnte. Wenn es nie genannt wird, wird die Warnung nicht angezeigt.nun haben wir also 4 Fälle..
Apple Mitgliedstaaten an:
Und:
NSLocationUsageDescription scheint tot, die einzige ref in der ADC-Website:
"https://developer.apple.com/ibeacon/Getting-Started-with-iBeacon.pdf"
So sicher sein, verwenden Sie die ersten 3.
Dieses Problem Auftritt, weil Sie nicht enthalten
für Ihre app. Ich Stand vor dem gleichen Problem, als ich versucht habe, um meine app auf dem AppStore. Nach der app bearbeitet wurde, bekam ich die gleiche mail. Ich habe gerade die Beschreibung und jetzt ist es gelöst.
Hoffe, das hilft.
Diese Antworten alle erzählen, wie Sie zur Einhaltung der App-Store-Regeln zur Vermeidung der Warnung, aber die wahre Korrektur wäre für die Expo zu ermöglichen, Sie zu deaktivieren Ihre SDKs Voraussetzung für Location-Dienste, wenn Sie Sie tatsächlich verwenden - ich bin mir nicht sicher, ob dies möglich ist.
gleiche Problem in Feb 19, habe eine E-Mail mit einem Bündel von Berechtigungen verwende ich nicht, ich nehme an, Sie sind des plugins. Apple sagt in der 19. März ist es erforderlich, so bin ich das hinzufügen dieser Informationen.plst und wieder hochladen.
Es ist sehr dumm, in der Tat.
Ich habe auch vor dem gleichen Problem, aber nach 27 Stunden bekam ich die E-Mail über genehmigt, auch habe ich nichts getan. So warten Sie etwa 24 Stunden zu tun, anstatt diesen ganzen Prozess wieder.
Meine app auch bekam, dass, und ich weiß nichts darüber, aber es kann gut laufen ,das nächste mal denke ich sollte hinzufügen, wie key in der plist,nur einige Beschreibung
Hatte ich
<key>NSLocationWhenInUseUsageDescription </key>
statt
<key>NSLocationWhenInUseUsageDescription</key>
entfernen Sie nachgestellte Leerzeichen