Italian Crash su Coogle Play Console

toro1950

Active Member
Licensed User
Ciao, ho inviato un app per la revisione su Google Play Console, ma è stata rifiutata perché presenta questo problema:
l'app si apre ma continua a bloccarsi. Mi hanno inviato due immagine allegate.
Ho testato l'app diverse volte su 3 telefoni Android, uno dei quali acquistato recentemente, senza problemi.
l'ho installato sia col i lBridge sia tramite il file apk e non sono mai riuscito a replicare l'errore, va sempre bene
Cosa mi consigliate? ho contattato il supporto inviadogli anche il file apk, la risposta fai ricorso😢.
mi viene il dubbio che l'errore si crea quando creo il pacchetto file.
B4A vers. 13.4.0 JAVA vers. 19.0.2.0
 

Attachments

  • errore.png
    errore.png
    25 KB · Views: 45

toro1950

Active Member
Licensed User
Dopo averlo testato su ben 7 cellulari senza avere problemi, questa sera finalmente ho trovato un vecchio Samsung
di circa 4 anni il quale si bloccato ed uscito il messaggio che mi ha inviato Google Play Console. Entro qualche giorno avrò
a disposizione quel cellulare per un paio d'ore, cosa mi consigliate di fare ed eventualmente che controlli dovrei inserire
Per il momento ringrazio in anticipo chiunque voglia aiutarmi
 

toro1950

Active Member
Licensed User
Sono riuscito a testare l'app sul cellulare che si blocca, in allegato il log rosso che mi rilascia,
sicuramente è legato alla seconda parte di una sub chiamata resetgrafica, se dopo la seconda
parte inserisco un Return l'app non esce, chiaramente non mi aggiorna la grafica.
B4X:
Private Sub resetgrafica
    For x= 1 To 24
        myora(x-1).Visible=True
        MyNome(x-1).Text=""
    MyVis(x-1).Text=""
    MyNome(x-1).Color=0xFF9ACD32
    MyVis(x-1).Color= 0xFF9ACD32
Next
qui ho inserito il Return

MyNome(24).Color= 0xFF9ACD32
    If lune.Length>20 Then
    If oggi<>"" Then
        If oggi ="lunedì" Then testo=lune
        If oggi ="martedì" Then testo=mart
        If oggi ="mercoledì" Then testo=merc
        If oggi ="giovedì" Then  testo=giov
        If oggi ="venerdì" Then testo=vene
        If oggi ="sabato" Then testo=saba
        If oggi ="domenica" Then testo=dome
   
        For x = 0 To 23
            z=x+1
   
            testo1= testo.SubString2(x,z)
            If testo1="0" Then myora(x).Visible=False
   
        Next
    End If
    End If
   
       
End Sub
ho testato l'app su vari cellulari, 2 con androide 15, due con 14, uno con 13 ed uno addirittura con androide 10 senza aver nessun problema
questo è un samsung con androide 14
 

Attachments

  • errori.txt
    1.1 KB · Views: 27

Star-Dust

Expert
Licensed User
Longtime User
L'errore lo genera un MsgBox2 a un livello superiore quando torna su da resetgrafica a seleziona o calcolaferie.

Sembra che sia generato nella grafica in realtà è quando finisce la grafica, torna sul livello superiore e va in errore
 

toro1950

Active Member
Licensed User
Star-Dust ti ringrazio dell'interessamento, tre Msgbox2 li ho utilizati solo per la richiesta di una scelta, non sono interessati all'avvio dell'App.
quello che non capisco perche su altri cellulari va bene e su questo e quello di google play non va bene. ho la stessa App in B4i per iphone accettata da diverso tempo da Apple che non possso publicarla se non riesco con questa su Google play console. Domani riuscirò ad ottenere di nuovo il cellulare dove si genera l'errore, cosa mi consigli fare. Confrontando i dati inviati alla sub con uno di quelli che va bene sono uguali
 

Star-Dust

Expert
Licensed User
Longtime User
Star-Dust ti ringrazio dell'interessamento, tre Msgbox2 li ho utilizati solo per la richiesta di una scelta, non sono interessati all'avvio dell'App.
quello che non capisco perche su altri cellulari va bene e su questo e quello di google play non va bene. ho la stessa App in B4i per iphone accettata da diverso tempo da Apple che non possso publicarla se non riesco con questa su Google play console. Domani riuscirò ad ottenere di nuovo il cellulare dove si genera l'errore, cosa mi consigli fare. Confrontando i dati inviati alla sub con uno di quelli che va bene sono uguali
Che su alcuni dispositivi dia problemi non è strano, alcune versioni di Android fanno controlli che altri non fanno perchè personalizzano il sistema operativo. Samsung sicuramente è uno fra quelli che lo fanno.

Comunque il problema è sicuramente il punto di ritorno, vedi dove torna e se c'è un MSGBOX appena subito dopo il ritorno. Quel pezzo di codice postalo (solo quel pezzo) e cosi vediamo insieme qual è il problema. (sembra più un problema di logica che di programmazione)

PS. Se usi il vecchio MSGBOX2 (modale) sostituiscilo con il nuovo XUI.msgbox2 o MsgboxAsync
 
Last edited:

toro1950

Active Member
Licensed User
Buonasera, finalmente ho trovato l'errore: la differenza è in questo codice
oggi = DateUtils.GetDayOfWeekName(DateTime.DateParse(testo))
dove testo è la data, che restituisce il giorno (lunedì martedì mercoledì ecc)
nella maggior parte dei cellulari il giorno è riportato come sopra in questo che da l'errore
i giorni sono con la prima lettera maiuscula (Lunedì Martedì Mercoledì ecc) sich!
il confronto if è case sensiteve quindi ecco il patacrack. ora basta convertire il tutto in minuscolo
ma io non so come farlo, con il linguaggio che uso per il pc e mac ho a disposizione Lowercase,
Uppercase e Tiltecase, penso ci sia anche per B4a ma non conosco la sintassi
 

Star-Dust

Expert
Licensed User
Longtime User
string.ToLowerCase
 

toro1950

Active Member
Licensed User
Grazie Star-Dust, or l'app non si blocca e sembra funzionare tutto bene però ho ancora un Logs con una parte rossa
uguale a quella di prima che riallego mentre sugli altri cellulari non c'è la parte rossa, quindi presumo ci sia ancora qualcosa
che non vada anche se non riesco a capirea cosa
 

Attachments

  • errori.txt
    1 KB · Views: 19
Top