mam skonfigurować zwyczaj głębokie powiązanie iOS schematu URL dla mojego app, i słuchać go wNiestandardowy schemat URL dla systemu iOS, gdy nie jest w tło
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
I analizować adres URL i wysłać zgłoszenie za pomocą NSNotificationCenter
, z adresem URL jako obiektem, do odpowiedniej klasy obsługującej adres URL.
To wszystko działa doskonale, gdy aplikacja jest "w tle", ale gdy aplikacja jest całkowicie zamknięta z powodu wielozadaniowości, wydaje się, że powiadomienie nigdy nie zostanie wysłane (lub otrzymane). Czy brakuje mi czegoś na temat procesu powiadomień, gdy aplikacja nie działa w tle? Czy istnieje inny sposób przekazywania informacji z adresu URL? A może jest jakiś sposób, aby powiedzieć, czy aplikacja wychodzi z tła lub czy jest to nowe uruchomienie?
Dzięki!
Polecam patrząc na 'applicationDidFinishLaunching: withOptions: '. Powiadomienia powinny być dostarczane w słowniku opcji uruchamiania. http://developer.apple.com/library/ios/#documentation/uikit/reference/UIApplicationDelegate_Protocol/Reference/Reference.html –
Upewnij się, że zwróciłeś 'TAK' z' application: willFinishLaunchingWithOptions: 'i' application: didFinishLaunchingWithOptions: ' . Jeśli zwróci 'NO', wówczas metoda' application: openURL: sourceApplication: adnotation: 'nie zostanie wywołana podczas uruchamiania aplikacji. – rmaddy
@rmaddy oba wracają TAK, "aplikacja: openURL: sourceApplication: adnotacja:" jest wywoływana, ale powiadomienie nie jest przekazywane – JeffN