Wir entwickeln eine iOS- und Android-App in Xamarin.Forms und möchten bei der Erstinstallation und späteren Updates eine Registrierung und Validierung vornehmen, ohne dass der Benutzer die App öffnen muss. Ist das möglich?Kann unsere mobile App Code beim Installieren und Aktualisieren ausführen, bevor/ohne geöffnet zu werden?
Antwort
Nein, es ist nicht möglich, ohne Benutzerinteraktion können Sie nichts tun!
Also brauche ich den Benutzer, um die App zu öffnen, um sicherzustellen, dass wir immer noch für Push-Benachrichtigungen usw. registriert sind? Das ist schade. –
Sobald Benutzerinteraktion dann können Sie alle entsprechend Ihrer Anforderung konfigurieren oder registrieren –
In Android können Sie auf Paket-Updates reagieren durch einen BroadcastReceiver Schreiben und Hören zu MY_PACKAGE_REPLACED:
[BroadcastReceiver(Enabled = true, Exported = true), IntentFilter(new[] { Intent.ActionMyPackageReplaced })]
public class PackageUpdateReceiver : BroadcastReceiver
{
public override void OnReceive(Context context, Intent intent)
{
if (intent.Package == "your.package.name") // Action MY_PACKAGE_REPLACED should only be called for your package - so this is actually not needed ...
{
// do some stuff ...
}
}
}
Das Attribut "BroadcastReceiver" wird für Sie einen offensichtlichen Eintrag erzeugen.
Hinweis: Wenn Sie DependencyService innerhalb dieser Methode verwenden möchten: Dont. Es wird nicht funktionieren, weil Ihre App zu diesem Zeitpunkt noch nicht initialisiert wurde - also wird der DependencyService abstürzen, weil niemand Xamarin.Forms.Init() aufgerufen hat.
EDIT: Um genauer zu sein - Der Receiver wird offensichtlich nur für bereits installierte Apps aufgerufen - das heißt, wenn eine neue Version Ihrer App über eine bestehende installiert wurde.
Diese Lösung funktioniert nicht für Neuinstallationen.
- 1. Schwierigkeit, App zu installieren und zu aktualisieren
- 2. Code beim Beenden der App ausführen
- 3. Fehler beim Installieren und Ausführen von rcpp
- 4. Fehler beim Ausführen der Google App Engine Mobile Backend-Client
- 5. Django - Code beim Start ausführen
- 6. Mobile Menü immer geöffnet
- 7. Kann nicht geöffnet werden liblaunch_sim.dylib
- 8. Eingabedatei konnte nicht geöffnet werden app/console
- 9. Kann sich das identifierForVendor beim Aktualisieren einer App ändern?
- 10. finden Sie mobile und installieren Sie die App
- 11. App beim Start mit nur Update nicht neu zu installieren
- 12. Anzeige: X-Server kann nicht geöffnet werden
- 13. Storyboard - Bildgröße zu groß beim Ausführen App
- 14. Facebook iOS SDK - Mobile App installieren Tracking funktioniert nicht
- 15. Nokogiri Fehler beim Ausführen von Bundle installieren
- 16. iOS und Android Mobile App Deep Linking
- 17. Einschränken, dass Google Maps in Mobile App automatisch geöffnet wird
- 18. Lösungsdatei kann nicht in Visual Studio-Code geöffnet werden
- 19. Menü kann nicht in ionic2 geöffnet werden
- 20. Python kann nicht geöffnet werden. Fehler 0xc000007b
- 21. Azure Mobile App kann nicht ordnungsgemäß veröffentlicht werden
- 22. Anwendung "Eclipse" kann nicht geöffnet werden. -10810
- 23. kann nicht geöffnet werden MySQL Dienstprogramme
- 24. Joomla - Kann keine Erweiterungen installieren/aktualisieren - Berechtigungen?
- 25. Laravel: Mobile und Web App
- 26. Azure Mobile App und Sicherheit
- 27. Wie kann ich Code ausführen, wenn ein Bootstrap Akkordeon in meiner Angular App geöffnet oder geschlossen wird?
- 28. kann nicht geöffnet werden config.json
- 29. Code beim Start der eckigen Anwendung ausführen
- 30. Kendo UI Mobile - Externe Links können nicht geöffnet werden
Nicht auf Android, zum Glück. Ich kann nicht für iOS sprechen. – CommonsWare
In iOS können Sie die App nicht automatisch aktualisieren, der Benutzer sollte das App-Update starten. –