7
votes

Obtenir la liste des applications installées sur l'objectif iPhone-C

J'ai une application qui doit obtenir la liste des applications installées (autres, peut-être peut-être une tierce partie) sur l'appareil. Comment ceci peut être fait? Ou peut-il être fait du tout?


5 commentaires

Ceci est en double, veuillez vous référer à la suite de threads- Stackoverflow.com/questions/4614114/...


Existe-t-il des bibliothèques tierces pour faire ce truc?


merci@rishi. J'ai manqué ça. S'il vous plaît répondez à ma question avec votre commentaire.


Je doute que si quelque chose est disponible, mais vous pouvez utiliser le lien suivant- iPhonedevsdk.com/forum/iphone-sdk-development/.../a> et avec l'aide de ce que vous pouvez vérifier la présente application.


S'il vous plaît, répondez à ma question avec votre commentaire (il sera marqué comme accepté)


6 Réponses :


5
votes

Il n'y a pas d'API publique d'Apple à récupérer une telle liste de l'appareil iOS (iPod Touch / iPhone / iPad)


0 commentaires

6
votes
-(NSArray *) installedApps
{
    BOOL isDir enter code here= NO;
    NSDictionary *cacheDienter code herect;
    NSDictionary *user;
    static NSString *const cacheFileName = @"com.apple.mobile.installation.plist";
    NSString *relativeCachePath = [[@"Library" stringByAppendingPathComponent: @"Caches"] stringByAppendingPathComponent: cacheFileName];
    NSString *path = [[NSHomeDirectory() stringByAppendingPathComponent: @"../.."] stringByAppendingPathComponent: relativeCachePath];
    if ([[NSFileManager defaultManager] fileExistsAtPath: path isDirectory: &isDir] && !isDir) // Ensure that file exists
    {
        cacheDict    = [NSDictionary dictionaryWithContentsOfFile: path];
        user = [cacheDict objectForKey: @"System"]; // Then all the user (App Store /var/mobile/Applications) apps
    }



    //NSLog(@"Installed Applications = %@",[user allKeys]); 
    //return [user allKeys];
    return nil;
}
this will give you the array of name of installed app using private API

1 commentaires

Ne fonctionne pas sous iOS 6 sur l'appareil. Le fichier n'existe pas.



3
votes

Je doute si quelque chose est disponible (si certains iPhone sont jailbribés et que l'utilisateur peut accéder au système de fichiers, il sera possible, mais je ne suis pas au courant de cela.), Mais vous pouvez utiliser après lien < / a> et avec l'aide de cela, vous pouvez vérifier la présente que toutes les applications sont présentes et que vous pouvez personnaliser avec certains de vos besoins.


0 commentaires


2
votes

Ceci ne propose pas d'applications installées, mais vous pouvez obtenir une liste d'applications exécutées en arrière-plan et leurs processus concernés par ce code.

appel de la vueDidLoad - xxx

. xxx


0 commentaires

0
votes

La réponse de Magicd et le commentaire de Victor de Magicd avec le lien vers le fichier d'en-tête m'a aidé à résoudre ceci.

Je voulais ajouter que vous devez ajouter la mobileInstallation.framework dans les "Cadres et les bibliothèques liées" dans XCode. J'ai trouvé ce cadre ici:

/applications/xcode.app/contents/developer/platforms/iphoneos.platform/developer/sdks/iphoneos7.1.sdk/system/library/privateframeworks < P> Je peux confirmer que cela fonctionne sur un périphérique non jailbreaké. L'App Store n'est pas une préoccupation pour moi.

Voici le code que j'ai utilisé: xxx


0 commentaires