Chcę poznać datę, czy nasza aplikacja została odinstalowana z iPhone'a?Skąd wiemy, że nasza aplikacja została odinstalowana z iPhone'a?
Odpowiedz
Nie można, nie można określić, czy aplikacja jest usuwana, ani czy Apple nie śledzi odinstalowanych aplikacji, do których użytkownik i programiści mają dostęp.
Nie ma bezpośredniej metody, aby uzyskać te informacje.
Możesz jednak zrobić, zapisując datę pierwszego pobrania w pęku kluczy lub innym pliku i zawsze, gdy chcesz go odzyskać.
Wszystkie pęku kluczy są przechowywane w urządzeniu nawet po usunięciu aplikacji. Weź pod uwagę, że usunąłeś aplikację i ponownie ją pobrałeś, Twój keychain będzie nienaruszony z bardzo pierwszą datą i godziną.
Użyj tego pęku kluczy lub pliku z listą aplikacji i porównaj, aby znaleźć brakujące aplikacje.
Możesz użyć kilku ulepszeń, aby to zrobić.
Przeczytaj to: http://iphonedevsdk.com/forum/iphone-sdk-development/37103-finding-out-what-apps-installed.html
A jeśli masz jailbreak, można to zrobić w ten sposób:
-(NSMutableArray *)desktopAppsFromDictionary:(NSDictionary *)dictionary{
NSMutableArray *desktopApps = [NSMutableArray array];
for (NSString *appKey in dictionary){
[desktopApps addObject:appKey];
}
return desktopApps;
}
-(NSArray *)installedApp{
BOOL isDir = NO;
if([[NSFileManager defaultManager] fileExistsAtPath: installedAppListPath isDirectory: &isDir] && !isDir)
{
NSMutableDictionary *cacheDict = [NSDictionary dictionaryWithContentsOfFile: installedAppListPath];
NSDictionary *system = [cacheDict objectForKey: @"System"];
NSMutableArray *installedApp = [NSMutableArray arrayWithArray:[self desktopAppsFromDictionary:system]];
NSDictionary *user = [cacheDict objectForKey: @"User"];
[installedApp addObjectsFromArray:[self desktopAppsFromDictionary:user]];
return installedApp;
}
return nil;
}
To pomoże mu w aplikacji innej osoby - nie w aplikacji, o której naprawdę chce się dowiedzieć. – Dejell
jak inni już odpowiedział - nie można.
Jeśli jednak masz włączone powiadomienia push w swojej aplikacji, możesz uzyskać bardzo przybliżony pomysł, korzystając z usługi APN, aby sprawdzić, które tokeny APN zostały usunięte (zakładane odinstalowanie). Więcej informacji można znaleźć w tym wpisie SO: "Push notification" - feedback, uninstall application
Powtórz tę czynność, która powinna być używana tylko w celu uzyskania bardzo zgrubnego pomysłu na temat odinstalowań, ponieważ użytkownik może z dowolnego powodu zrezygnować z powiadomień wypychanych lub zmian tokenów użytkownika.
Istnieje kilka narzędzi, które mogą śledzić odinstalowania aplikacji. Ten, który uważam za przydatny, to Uninstall tracking - MoEngage. Dają ci pełną listę użytkowników, którzy odinstalowali twoją aplikację. Możesz także wywnioskować, co spowodowało odinstalowanie aplikacji przez użytkownika. Najlepsze jest to, że możesz wysyłać wiadomości e-mail do tych użytkowników, którzy odinstalowali twoją aplikację przez panel kontrolny MoEngage, aby uzyskać informacje zwrotne lub uzyskać tych użytkowników na pokładzie.
- 1. Wykryj, czy aplikacja została odinstalowana
- 2. Skąd wiadomo, że moja aplikacja nie została dodana do zapory?
- 3. Jak wykryć, czy aplikacja na Androida została zatrzymana lub odinstalowana?
- 4. Skąd wiadomo, że aktywność została zakończona?
- 5. Wykryto, że aplikacja została uruchomiona w tle?
- 6. Jak znaleźć nazwę pakietu, która została odinstalowana podczas używania Intent.ACTION_PACKAGE_REMOVED
- 7. W jaki sposób możemy osiągnąć, że nasza aplikacja może również przenieść się na kartę SDCard?
- 8. Aktualizacja Java 7 powoduje, że nasza aplikacja startowa java nie działa bez logowania
- 9. Aplikacja nie została zainstalowana
- 10. Jak powiedzieć Google, że strona została przeniesiona?
- 11. Moja aplikacja została odrzucona z powodu UIBackgroundModes
- 12. Aplikacja TableView została zakończona z powodu "NSInternalInconsistencyException"
- 13. Skąd CUDA została zainstalowana na moim komputerze?
- 14. Objective-C Wywołanie selektor, że kompilator nie wierzy istnieje (choć wiemy, że to robi)
- 15. klasa nie została zdefiniowana pomimo, że została zaimportowana
- 16. Jak wiemy zdarzenie Scroll zakończył z jQuery
- 17. Skąd wiadomo, że NSTextView traci ostrość?
- 18. Skąd wiadomo, że tableView zaczął przewijanie
- 19. Skąd wiadomo, że kontrolka WPF jest renderowana?
- 20. Skąd wiadomo, że strumień jest zamknięty?
- 21. Skąd Git wie, że zmieniono nazwę pliku?
- 22. Skąd wiadomo, że EditText traci ostrość?
- 23. Skąd wiadomo, że klawiatura jest otwarta?
- 24. Skąd mam wiedzieć, że kolumnizacja jest skończona?
- 25. Aplikacja została odrzucona, ponieważ używa tylko Facebooka jako opcji logowania?
- 26. Wykryj, czy aplikacja została aktywowana z powodu UILocalNotification
- 27. Wykrywanie że metoda nie została przesłonięta
- 28. Znajdź rewizję w trunk, że gałąź została utworzona z
- 29. Należy stwierdzić, że rejestracja została wywołana z określonym ciągiem znaków
- 30. Skąd wiadomo, czy instancja modelu django została zmodyfikowana?
Domyślam się, że możesz zrobić aktualizację i zobaczyć, ile aktualizacji otrzymasz. To niechlujny sposób na uzyskanie jakichkolwiek danych, ale wciąż jest to jedno podejście. – Christoffer