Problème avec une distribution Ad Hoc sur iPhone5

Bonjour à  tous,

J'avais transmis une de mes application à  un collègue qui avait un iPhone 4, et celle-ci fonctionnait correctement. J'avais opté pour une distribution Ad Hoc (création du profil adéquat avec le n° UDID de l'appareil) et tout allait bien jusqu'à  ce que celui-ci ne décide de s'offrir un iPhone 5. image/crazy.gif' class='bbc_emoticon' alt=' B) ' />

Evidemment, j'ai mis à  jour le profil en y insérant le nouveau numéro d'UDID, que j'ai transmis avec le nouveau .ipa, mais apparemment çà  ne suffisait pas !

J'ai donc refait le projet pour y inclure les "auto-resizing constraints" `(çà  a été rapide, il n'y a que 2 xib !) et tout fonctionne sur le simulateur, mais impossible de faire fonctionner l'application sur l'appareil en question !



L'application s'installe bien mais au lancement, juste un écran noir avant de planter...

Je ne sais pas trop comment faire pour identifier ce qui plante ; si vous avez une petite piste ?



Merci d'avance image/implore.gif' class='bbc_emoticon' alt=' o:) ' />

Réponses

  • les logs donnent quoi ?
  • Alf1996Alf1996 Membre
    novembre 2012 modifié #3
    Question bête : comment puis-je lui faire récupérer les logs de son iPhone ? Via iTunes ?

    Merci en tout cas de ton aide.
  • AliGatorAliGator Membre, Modérateur
    novembre 2012 modifié #4
  • Merci Ali, j'étais justement en train de chercher comment faire sans Xcode... Evidemment c'était dans la doc !!! image/tomato.gif' class='bbc_emoticon' alt=' :o ' />
  • Cà  y est, j'ai fait un petit tuto pour demander une crash log à  mon collègue... J'attends sa réponse, et je vous tiendrais au courant, car je crois que je risque d'avoir besoin d'aide pour interpréter la chose... image/rolleyes.gif' class='bbc_emoticon' alt='::)' />

    Merci en tout cas...
  • Bon je déterre ce post que j'avais mis de côté car mon collègue ne m'avait pas envoyé les crash logs...

    En distribuant l'application à  un autre user, j'ai eu le même problème. Alors j'ai eu l'idée d'installer mon appli en test sur l'iPhone de mon mari. Et là , j'ai reproduit le bug. Entre temps, j'avais résolu une partie des problèmes en améliorant l'autolayout, et le nouveau problème se situait au niveau de l'affichage de la view "options" où l'on choisissait (entre autre) un calendrier, parmi la liste des calendriers de l'utilisateur. Cette liste restait désespérément vide... La solution : il fallait vérifier l'autorisation d'utilisation des calendriers... Du coup, la création de la liste des calendriers était un peu plus longue (du fait de la vérification des autorisations je pense), et j'ai du faire un complétion block...

    Voici un exemple de code, çà  pourra sans doute servir à  quelqu'un :

    dans le viewDidAppear :
    <br />
    	UIActivityIndicatorView *waitingView=[[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(self.view.frame.size.width/2-40, self.view.frame.size.height/2, 80, 80)];<br />
    	[waitingView setColor:[UIColor blackColor]];<br />
    	[self.view addSubview:waitingView];<br />
    	[waitingView startAnimating];<br />
    	[self listCalendarsWithCompletion:^(BOOL calendarOK) {<br />
    		if (&#33;calendarOK) {<br />
    			UIAlertView *myAlert=[[UIAlertView alloc] initWithTitle:@&quot;Erreur&quot; message:@&quot;Accès aux calendriers non autorisé&quot; delegate:nil cancelButtonTitle:@&quot;OK&quot; otherButtonTitles: nil];<br />
    			[myAlert show];<br />
    			[myAlert release];<br />
    		} else {			  <br />
    			[self.pickerCalendars reloadAllComponents];<br />
    			[waitingView stopAnimating];<br />
    			}<br />
    		}<br />
    		[waitingView removeFromSuperview];<br />
    		[waitingView release];<br />
    	}];<br />
    


    et la méthode de listage des calendriers :
    <br />
    <br />
    -(void) listCalendarsWithCompletion:(void(^)(BOOL calendarOK))completion {<br />
       [self.eventStoreFlip requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted,NSError* error){<br />
    		//Access not granted--<br />
    		if(&#33;granted){<br />
    			if ([self.listCal count]&#33;=0) {<br />
    				[self.listCal removeAllObjects];<br />
    			}<br />
    			completion(NO);<br />
    		} else {<br />
    			NSArray *listOfCalendars=[self.eventStoreFlip calendarsForEntityType:EKEntityTypeEvent];<br />
    			if ([self.listCal count]&#33;=0) {<br />
    				[self.listCal removeAllObjects];<br />
    			}<br />
    			for (EKCalendar *thisCalendar in listOfCalendars) {<br />
    				[self.listCal addObject:[NSString stringWithFormat:@&quot;%@&quot;,thisCalendar.title]];<br />
    			}<br />
    			completion(YES);<br />
    		}<br />
    	}];<br />
    }<br />
    




    Au passage, je vais changer le titre du post, car çà  n'a plus grand chose à  voir avec le problème initial. Le problème ne venait pas uniquement de l'iPhone5, mais surtout du fait que l'application n'avait encore jamais été utilisée sur l'iPhone en question. Pour les autres utilisateurs, çà  fonctionnait car l'application y avait été installée avant iOS 6.
Connectez-vous ou Inscrivez-vous pour répondre.