Ich weiß, dass dies 1 Million Mal gestellt wurde, aber es war einfach unmöglich, es für mich herauszufinden.
Ich muss also eine Schrittzähler-App erstellen und das Ereignis "Schritte zählen" fortsetzen, wenn sie die App für mehr als 10 Minuten an den Hintergrund sendet.
Der Client möchte überhaupt kein GPS verwenden, und auch kein stilles Audio abspielen, da Apple es möglicherweise ablehnt.
Hat jemand eine Idee, wie man das macht?
Der Kunde nimmt Runtastic Pedometer App als Referenz und ich habe es analysiert und es verwendet weder Ort noch Musik und läuft im Hintergrund für mehr als 10 Minuten.
Irgendwelche Hinweise? Ist es wirklich unmöglich, es so zu machen? Könnte es sein, dass Runtastic-Leute mit Apple eine Vereinbarung getroffen haben, eine geheime API zu verwenden, damit sie im Hintergrund läuft?
Ich habe Runtastic Schrittzähler angeschaut und es hat folgendes in seiner Info.plist
Datei:
Sie machen also im Prinzip den Audiotrick und behaupten, sie hätten etwas mit einem externen Zubehörteil zu tun.
Ich hasse es, das Offensichtliche zu sagen, aber Ihre Frage scheint zu sein: "Das sind die Regeln, aber ich will ihnen nicht folgen. Wie komme ich um sie herum?" Die Antwort scheint zu lauten: "Fügen Sie Ihrer App Funktionen hinzu, bis Sie eines der Kriterien erfüllen." Aus der Dokumentation:
In iOS dürfen nur bestimmte App-Typen im Hintergrund ausgeführt werden:
- Apps, die dem Benutzer während des Hintergrunds hörbare Inhalte wiedergeben, wie eine Musik-Player-App
- Apps, die die Nutzer auf dem Laufenden halten Ort, wie z. B. eine Navigations-App
- Apps, die unterstützen VoIP (Voice over Internet Protocol)
- Kiosk-Apps, die neue Inhalte herunterladen und verarbeiten müssen
- Apps, die regelmäßige Updates von externem Zubehör erhalten
Fügen Sie also eine dieser Funktionen zu Ihrer App hinzu. Fügen Sie nach jeder gehenden Meile eine Einstellung hinzu, um ein Glückwunschgeräusch zu spielen. Lassen Sie es standardmäßig deaktiviert. Das sollte Sie für die Audio-Playing-Ausnahme qualifizieren. Haben Sie eine Option zum Erfassen von Standortdaten, um zu markieren, wo der Benutzer war, als er 1.000 Meilen überquerte. Lassen Sie die Funktion standardmäßig deaktiviert. Das sollte sich für die Standortkriterien qualifizieren. Füge eine Funktion hinzu, um inspirierende Haiku aus einem RSS-Feed oder Schlagzeilen von runnersworld.com herunterzuladen. Das könnte Sie auf den Grund des neuen Inhalts bringen. Es ist nicht schwer. Stellen Sie sich einfach ein triviales, zehnzeiliges Code-Feature vor, das Sie in die Tür bringt. Nutze deine Vorstellungskraft.
Sie können die Apple-Dokumentation über
Wenn Sie eine Serverseite haben, können Sie vermeiden, dass Sie Ihre App selbst im Hintergrund ausführen, indem Sie einen stillen Push senden und Ihre App nur für die Meldung der Anzahl der Schritte aufwecken.
Sie können sich für stille Push-Vorgänge registrieren, ohne dass der Benutzer Push-Nachrichten erhalten muss, da sie diese nicht sehen.
Tags und Links objective-c ios accelerometer background