Honi - Petites missions entre couple

Bonjour à  tous  ,

 

Par où commencer.

J'ai codé une application iPhone pour les couples, trouvant qu'il y avait trop d'applications pour les célibataires et rien pour les couples.

Vous pouvez d'ailleurs avoir un aperçu sur ce site, et je pourrais revenir sur le concept avec vous si vous le souhaitez.
http://www.gethoni.com

 

 

Je vais tenter d'expliquer mon souci le mieux possible.

J'ai appris à  coder en autodidacte, mon application est réalisée avec la dernière version de Swift, et j'utilise Parse qui gère tout le back end.

 

Depuis maintenant deux mois, je fais tester mon application à  environ 40 personnes sur TestFlight, et j'ai pu résoudre les derniers bugs présents petit à  petit.

J'ai donc publié mon application la semaine dernière, en étant persuadé qu'elle serait acceptée, j'en étais quand même au build 24 hum.

 

Ils m'ont répondu hier que l'application était refusée et qu'elle crashé au démarrage, ce qui m'a vraiment étonné, car je n'ai jamais eu ce souci.

 

 

Cela fait maintenant une journée entière que je traque sur internet toutes les informations possibles.

J'ai d'abord récupéré le fichier crash d'Apple, que j'ai ouvert avec Xcode dans mon device, je pourrais vous le poster, mais je pense pas que cela vous aide vraiment.

 

En regroupant toutes les informations d'Internet, j'en viens donc à  plusieurs hypothèses, et j'aimerais qu'on résolve ce souci ensemble.

 

 

1. Tout d'abord, ce problème est arrivé à  certains, et ce serait la faute d'Apple, qui après quelques relances s'excuse et publie l'application, mais ce serait un peu trop simple, alors je ne veux pas y croire.

 

2. J'avais juste une mini requête synchrone dans mon applicationdidBecomeActive, j'ai tout enlevé et je l'ai placé ailleurs dans le code, c'est peut être ça.

 

3. Je n'avais aucun fichier test dans mon application, et une solution disait de supprimer "HoniTest" dans Targets, ce que j'ai fait.

 

4. Enfin, j''ai remarqué aussi un oubli de ma part, dans Projet, j'avais un deployment target à  8.4 et dans Target, ce meme deployment target était à  8.0, je l'avais baissé une fois et j'avais du oublié de le changer dans l'autre.

 

 

J'ai résolu tous ces problèmes, mais maintenant j'hésite à  le republier.

Le build actuel est 25 de la version 1.0, je viens de l'upload sur iTunes Connect.

 

Le dernier problème serait peut être l'utilisation de la mémoire, mais je n'ai jamais eu d'avertissement sur xCode ou ailleurs, mais si des personnes veulent tester le build 25 depuis Test Flight, ce serait avec plaisir.

 

 

 

En espérant que l'on trouve ensemble une solution, parce que du coup, j'ai peut être codé seul, mais c'est la première fois que je me trouve face à  un problème dont je ne vois pas de solution.

 

 

Merci de votre attention, et désolé pour ce long pavé.

 

Réponses

  • Profite de ce délai pour corriger les fautes sur ton site...


    Sinon post un rapport complet parce que là  c'est très cryptique.


  • CéroceCéroce Membre, Modérateur

    Sans voir le crashlog nous ne pouvons rien pour toi.


  • FKDEVFKDEV Membre
    janvier 2016 modifié #4
    Peut-être que la requête synchrone peut bloquer l'app assez longtemps pour que le système décide de la tuer. Surtout si le serveur est injoignable : mode avion ou accès internet impossible. Essaye de tester ce cas-là  avec le build qui a été soumis.
     
    Cependant, le crash log semble avoir rapport avec un touch, donc c'est peut-être un problème d'UI.

    Dommage que ton crash log ne soit pas "symbolisé", tu aurais au moins le nom des méthodes qui amène au crash dans ton app. Cf. la note suivante :
    https://developer.apple.com/library/ios/technotes/tn2151/_index.html
    (cf section Symbolication)
  • SpathodesSpathodes Membre
    janvier 2016 modifié #5

    Merci pour vos réponses.


    @Pyroh, pour le site, j'ai fait confiance à  un ami parce que je n'avais pas le temps de tout faire, il vient de me refaire une version, et je suis aussi surpris des fautes que toi, et elles vont être corrigées, mais ce n'est pas le plus gros souci actuel.


     


    Alors depuis hier, j'ai réussi à  symboliser le crash et en effet, cela n'a rien à  voir avec les problèmes que j'ai énoncé.


    J'ai quand même enlevé la requête synchrone, et @FKDEV, tous les tests avec mode avion ou internet impossible sont gérés.


     


    Je vous poste le crash log :



    Incident Identifier: E9B53C55-88DB-40E3-8BBA-4F86C503A776
    CrashReporter Key: 95bf0295ecd50c3c6eaaa238c040d70cc43eb675
    Hardware Model: xxx
    Process: Honi [430]
    Path: /private/var/mobile/Containers/Bundle/Application/49FA0CC4-FABB-423F-80B3-724615135FC2/Honi.app/Honi
    Identifier: com.alexlb.Honi
    Version: 23 (1.0)
    Code Type: ARM-64 (Native)
    Parent Process: launchd [1]

    Date/Time: 2016-01-09 09:46:59.59 -0800
    Launch Time: 2016-01-09 09:46:52.52 -0800
    OS Version: iOS 9.2 (13C75)
    Report Version: 105

    Exception Type: EXC_BREAKPOINT (SIGTRAP)
    Exception Codes: 0x0000000000000001, 0x0000000100049ea4
    Triggered by Thread: 0

    Filtered syslog:
    None found

    Global Trace Buffer (reverse chronological seconds):
    5.557114 AppleJPEG 0x0000000183338ff4 [0x158100000] Decoding completed without errors
    5.557430 AppleJPEG 0x000000018333718c [0x158100000] Options: 200x200 [FFFFFFFF,FFFFFFFF] 00025060
    5.557430 AppleJPEG 0x0000000183337044 [0x158100000] Decoding: C2 0x00C800C8 0x00003842 0x22111100 0x00000000 7399
    5.558321 AppleJPEG 0x0000000183336338 [0x158100000] Created session
    5.560961 AppleJPEG 0x0000000183338ff4 [0x1580b4800] Decoding completed without errors
    5.560962 AppleJPEG 0x000000018333718c [0x1580b4800] Options: 1x-1 [FFFFFFFF,FFFFFFFF] 00054060
    5.560962 AppleJPEG 0x0000000183337044 [0x1580b4800] Decoding: C0 0x00960095 0x0000304A 0x21111100 0x00000000 2532
    5.666073 AppleJPEG 0x0000000183336338 [0x1580b4800] Created session
    5.819532 CFNetwork 0x00000001822a984c TCP Conn 0x1575b2de0 SSL Handshake DONE
    5.900677 CFNetwork 0x00000001822a975c TCP Conn 0x1575b2de0 starting SSL negotiation
    5.900826 CFNetwork 0x000000018234b104 TCP Conn 0x1575b2de0 complete. fd: 13, err: 0
    5.901075 CFNetwork 0x000000018234c630 TCP Conn 0x1575b2de0 event 1. err: 0
    5.982653 CFNetwork 0x000000018234c708 TCP Conn 0x1575b2de0 started
    5.985480 CFNetwork 0x00000001822a984c TCP Conn 0x1576561a0 SSL Handshake DONE
    6.155387 CFNetwork 0x00000001822a975c TCP Conn 0x1576561a0 starting SSL negotiation
    6.155788 CFNetwork 0x000000018234b104 TCP Conn 0x1576561a0 complete. fd: 5, err: 0
    6.156125 CFNetwork 0x000000018234c630 TCP Conn 0x1576561a0 event 1. err: 0
    6.243109 CFNetwork 0x000000018234c708 TCP Conn 0x1576561a0 started



    Thread 0 name: Dispatch queue: com.apple.main-thread
    Thread 0 Crashed:
    0 Honi 0x0000000100049ea4 0x100020000 + 171684
    1 Honi 0x000000010004811c 0x100020000 + 164124
    2 UIKit 0x00000001869fbe50 -[UIApplication sendAction:to:from:forEvent:] + 100
    3 UIKit 0x00000001869fbdcc -[UIControl sendAction:to:forEvent:] + 80
    4 UIKit 0x00000001869e3a88 -[UIControl _sendActionsForEvents:withEvent:] + 416
    5 UIKit 0x00000001869fb6e4 -[UIControl touchesEnded:withEvent:] + 572
    6 UIKit 0x00000001869fb314 -[UIWindow _sendTouchesForEvent:] + 804
    7 UIKit 0x00000001869f3e30 -[UIWindow sendEvent:] + 784
    8 UIKit 0x00000001869c44cc -[UIApplication sendEvent:] + 248
    9 UIKit 0x00000001869c2794 _UIApplicationHandleEventQueue + 5528
    10 CoreFoundation 0x0000000181c88efc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24
    11 CoreFoundation 0x0000000181c88990 __CFRunLoopDoSources0 + 540
    12 CoreFoundation 0x0000000181c86690 __CFRunLoopRun + 724
    13 CoreFoundation 0x0000000181bb5680 CFRunLoopRunSpecific + 384
    14 GraphicsServices 0x00000001830c4088 GSEventRunModal + 180
    15 UIKit 0x0000000186a2cd90 UIApplicationMain + 204
    16 Honi 0x000000010007fda4 0x100020000 + 392612
    17 libdyld.dylib 0x00000001817568b8 start + 4



    Thread 1:
    0 libsystem_kernel.dylib 0x0000000181874b6c __workq_kernreturn + 8
    1 libsystem_pthread.dylib 0x0000000181939530 _pthread_wqthread + 1284
    2 libsystem_pthread.dylib 0x0000000181939020 start_wqthread + 4

    Thread 2 name: Dispatch queue: com.apple.libdispatch-manager
    Thread 2:
    0 libsystem_kernel.dylib 0x00000001818754fc kevent_qos + 8
    1 libdispatch.dylib 0x000000018173894c _dispatch_mgr_invoke + 232
    2 libdispatch.dylib 0x00000001817277bc _dispatch_source_invoke + 0

    Thread 3:
    0 libsystem_kernel.dylib 0x0000000181874b6c __workq_kernreturn + 8
    1 libsystem_pthread.dylib 0x0000000181939530 _pthread_wqthread + 1284
    2 libsystem_pthread.dylib 0x0000000181939020 start_wqthread + 4

    Thread 4:
    0 libsystem_kernel.dylib 0x0000000181874b6c __workq_kernreturn + 8
    1 libsystem_pthread.dylib 0x0000000181939530 _pthread_wqthread + 1284
    2 libsystem_pthread.dylib 0x0000000181939020 start_wqthread + 4

    Thread 5:
    0 libsystem_kernel.dylib 0x0000000181874b6c __workq_kernreturn + 8
    1 libsystem_pthread.dylib 0x0000000181939530 _pthread_wqthread + 1284
    2 libsystem_pthread.dylib 0x0000000181939020 start_wqthread + 4

    Thread 6:
    0 libsystem_kernel.dylib 0x0000000181874b6c __workq_kernreturn + 8
    1 libsystem_pthread.dylib 0x0000000181939530 _pthread_wqthread + 1284
    2 libsystem_pthread.dylib 0x0000000181939020 start_wqthread + 4

    Thread 7:
    0 libsystem_kernel.dylib 0x0000000181874b6c __workq_kernreturn + 8
    1 libsystem_pthread.dylib 0x0000000181939530 _pthread_wqthread + 1284
    2 libsystem_pthread.dylib 0x0000000181939020 start_wqthread + 4

    Thread 8:
    0 libsystem_kernel.dylib 0x0000000181874b6c __workq_kernreturn + 8
    1 libsystem_pthread.dylib 0x0000000181939530 _pthread_wqthread + 1284
    2 libsystem_pthread.dylib 0x0000000181939020 start_wqthread + 4

    Thread 9 name: com.apple.NSURLConnectionLoader
    Thread 9:
    0 libsystem_kernel.dylib 0x00000001818594bc mach_msg_trap + 8
    1 libsystem_kernel.dylib 0x0000000181859338 mach_msg + 72
    2 CoreFoundation 0x0000000181c88ac0 __CFRunLoopServiceMachPort + 196
    3 CoreFoundation 0x0000000181c867c4 __CFRunLoopRun + 1032
    4 CoreFoundation 0x0000000181bb5680 CFRunLoopRunSpecific + 384
    5 CFNetwork 0x0000000182325434 +[NSURLConnection(Loader) _resourceLoadLoop:] + 412
    6 Foundation 0x0000000182693c40 __NSThread__start__ + 1000
    7 libsystem_pthread.dylib 0x000000018193bb28 _pthread_body + 156
    8 libsystem_pthread.dylib 0x000000018193ba8c _pthread_body + 0
    9 libsystem_pthread.dylib 0x0000000181939028 thread_start + 4

    Thread 10 name: com.apple.CFSocket.private
    Thread 10:
    0 libsystem_kernel.dylib 0x0000000181874368 __select + 8
    1 CoreFoundation 0x0000000181c8f028 __CFSocketManager + 648
    2 libsystem_pthread.dylib 0x000000018193bb28 _pthread_body + 156
    3 libsystem_pthread.dylib 0x000000018193ba8c _pthread_body + 0
    4 libsystem_pthread.dylib 0x0000000181939028 thread_start + 4

    Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000000000 x1: 0x0000000000000001 x2: 0x0000000000000000 x3: 0x000000016fdddc68
    x4: 0x0000000000000001 x5: 0x0000000000000001 x6: 0x0000000000000065 x7: 0x0000000000000000
    x8: 0x0000000000000001 x9: 0x0000000000000011 x10: 0x0000000158800000 x11: 0x000000530000007f
    x12: 0x0000000158800720 x13: 0x000021a19f5f7bd5 x14: 0x0000000000400031 x15: 0x0000000159100000
    x16: 0x00000001873d5e72 x17: 0x0000000181cb8c7c x18: 0x0000000000000000 x19: 0x0000000157661310
    x20: 0x0000000157575940 x21: 0x00000001575d6100 x22: 0x00000001576791d0 x23: 0xa000000657265724
    x24: 0x00000001575704a0 x25: 0x00000001575d6100 x26: 0x0000000042000000 x27: 0x0000000000000001
    x28: 0x0000000100210440 fp: 0x000000016fdde000 lr: 0x0000000100049d24
    sp: 0x000000016fddde00 pc: 0x0000000100049ea4 cpsr: 0xa0000000

    J'ai donc symbolisé les lignes 1, 2 et 16 traitant de Honi et cela donne respectivement :



    SMSegment.(title.materializeForSet).(closure #1) (in Honi) (SMSegment.swift:61)
    Demarrage.(enregistrement(Demarrage) -> (AnyObject) -> ()).(closure #1).(closure #2) (in Honi) (Demarrage.swift:180)


    Yours.(yes(Yours) -> (AnyObject) -> ()).(closure #1) (in Honi) (Yours.swift:433)
    Demarrage.(enregistrement(Demarrage) -> (AnyObject) -> ()).(closure #1).(closure #2) (in Honi) (Demarrage.swift:180)


    Sent.(yes(Sent) -> (AnyObject) -> ()).(closure #1).(closure #1) (in Honi) (Sent.swift:323)
    Demarrage.(enregistrement(Demarrage) -> (AnyObject) -> ()).(closure #1).(closure #2) (in Honi) (Demarrage.swift:180)
    Demarrage.(enregistrement(Demarrage) -> (AnyObject) -> ()).(closure #1).(closure #2) (in Honi) (Demarrage.swift:180)

    J'utilise la librairie SMSegmentView dans mon application donc en voyant le crash symbolise, je suis allé voir la ligne 61 de SMSegment.swift qui correspond à  ce bloc de code :



    var title: String? {
    didSet {

    self.label.text = self.title

    if let titleText = self.label.text as NSString? {
    //ligne 61 juste en dessous
    self.labelWidth = titleText.boundingRectWithSize(CGSize(width: self.frame.size.width, height: self.frame.size.height), options:NSStringDrawingOptions.UsesLineFragmentOrigin , attributes: [NSFontAttributeName: self.label.font], context: nil).size.width
    }
    else {
    self.labelWidth = 0.0
    }

    self.resetContentFrame()
    }


    Pour les fichiers Sent, Yours et Démarrage, les lignes correspondantes me semblent avoir aucun rapport avec un quelqueconque crash


     


    Si le log en entier avec les binary images est nécessaire, je n'hésiterai pas à  le poster mais cela faisait un peu long.


     


    Merci de vos réponses en tout cas.


  • Bonjour à  tous,


     


    Juste pour déjà  vous remercier d'avoir essayé de m'aider, mais en fait, en corrigeant les points que j'avais cité dans mon premier message, l'application vient d'être validée.


     


    https://itunes.apple.com/fr/app/honi-petites-missions-entre/id988517164?mt=8


     


    Le crash log n'aura pas été beaucoup d'aide, et je ne le comprends toujours pas je l'avoue.


     


    Bon week end à  tous.


  • Bonjour,


     


    je viens d'aller faire un tour sur la page de présentation. L'esthétique est sobre et épurée, je trouve l'idée sympa.


    Attention, juste, à  la grammaire  ;) ! (je ne me ferai pas draguer)


    Bon vent à  ton app !


  • Effectivement, le conditionnel n'a pas sa place ici ;)


     


    Merci, et bonne journée.


Connectez-vous ou Inscrivez-vous pour répondre.