Lo prendo come una battuta: 15 activity e 7 moduli !Hai provato a riscrivere l'App daccapo?, di solito funziona
Leggermente OT ma visto quale fosse l'errore voglio "raccontarvi" una stranezza; riguarda un mio post in questo thread:Infatti come volevasi dimostrare era legato all'aggiornamento del 7.0. Sleep(0) non corrisponde a DoEvents come ha ampiamente dimostrato @LucaMs (a suo rischio e pericolo)
Io ancora uso 6.50 per intenderci.
La mia libreria in questione è la SuggestionEditText (quindi una custom view).Ora che ci penso, io sto compilando una mia app con la versione precedente di b4a, la 6.80, perché con la 7 ottengo un errore che suppongo sia dovuto ad una mia libreria, che dovrei ricompilare con la 7. Forse l'errore era anch'esso incomprensibile; fò una provola e... aggiorno questo post...
P.S.
A quanto pare non era in fase di compilazione, ergo non dovrebbe entrarci un tubero.
Oh, comunque, tornando in tema, la funzione Sleep inserita nella routine-evento Activity_Create manda in crash l'app perché Sleep restituisce temporaneamente il controllo alla routine che ha lanciato quella contenente questa funzione (Sleep) ma chi lancia Activity_Create?Tutto quanto sopra giusto per dire che l'ultima versione di B4A fa scherzi stupidi
La libreria compilata con / adesso funziona su 6.8?Leggermente OT ma visto quale fosse l'errore voglio "raccontarvi" una stranezza; riguarda un mio post in questo thread:
La mia libreria in questione è la SuggestionEditText (quindi una custom view).
La utilizzo nella mia famigerata app: né questa né la libreria contengono routine riesumabili, quindi né istruzioni Sleep né Wait For.
Compilando l'app con b4a 6.80, tutto ok; la compilazione con la 7.01 viene completata senza errori ma, a runtime, l'app va in crash ed il messaggio d'errore:
java.lang.NoSuchMethodError: anywheresoftware.b4a.sql.SQL.ExecNonQueryBatch
at b4a.example.suggestionsedittext._addallasync(suggestionsedittext.java:111)
(e qui noto che nella libreria ho lasciato b4a.example come package e non avrei dovuto farlo ma non dovrebbe essere questo il problema).
Quindi pare non esistere il metodo SQL.ExecNonQueryBatch, utilizzato dalla libreria suggetionsedittext, precisamente dal suo metodo addallasync. Ovviamente, come sapete, il metodo esiste eccome.
Beh, ho compilato ed eseguito il progetto di test che allegai insieme alla libreria pubblicata, con b4a 7.01, e funziona senza problemi. Il progetto, essendo appunto un esempio dell'utilizzo del custom view è davvero spartano, quasi vuoto.
Potrei porre la questione sul forum "internazionale" ma, a parte la scocciatura di doverlo spiegare in inglese , temo che non otterrei risposte (il motivo è meglio che non lo spieghi... forse).
Tutto quanto sopra giusto per dire che l'ultima versione di B4A fa scherzi stupidi (e non so quanto saranno utilizzate le routine Lazzaro!).
P.S. E' probabile, benché strano, che potrei risolvere il problema ricompilando la libreria con B4A 7.01 (e magari lo farò presto per vedere se la cosa risolva); resta il fatto che non si capisce come non venga trovato il metodo ExecNonQueryBatch, visto che fa parte della libreria SQL originale.
Come "temevo": compilata la libreria con B4A 7.01, l'app non va più in crash.ma tra poco lo farò, giusto per vedere se tutto va a posto ma questo non soddisferebbe la mia "curiosità" di capirne il motivo
No, era compilata con la 6.80. Dovrebbe funzionarti con la 6.5; non va?Adesso è compilata con la 7.01
Le la passi a un povero disgraziato che ha la 6.5 funzionerà ?
Giusto per confermare, magari potrebbe capitare ad altri: cambiato package name il problema è rimasto (sparito dopo la compilazione con B4A 7.01 e questo rimane un mistero. Forse pubblicherò la domanda, malgrado tutto funzioni, ma non mi aspetto una risposta dall'unica persona che potrebbe replicare, ovvero Erel, quindi sarà tempo sprecato).(e qui noto che nella libreria ho lasciato b4a.example come package e non avrei dovuto farlo ma non dovrebbe essere questo il problema).
Semplicemente non vale la pena tentare di sostituire i DoEvents in app funzionanti.
Infatti, è proprio quello che è successo a me.altrimenti restitiscono il controllo alle routine chiamanti e succede un casino.
Probabilmente, in alcuni casi, può essere utile il Wait For (ma se non sbaglio fino ad oggi siamo riusciti a fare a meno anche di questo).A questo punto usa la 6.80
https://www.b4x.com/android/forum/threads/custom-view-suggestionsedittext.77776/#post-513174Adesso è compilata con la 7.01
Le la passi a un povero disgraziato che ha la 6.5 funzionerà ?
Infatti, questa funzione è utile, ma la uso, per ora, in un solo caso.Probabilmente, in alcuni casi, può essere utile il Wait For (ma se non sbaglio fino ad oggi siamo riusciti a fare a meno anche di questo).
E no! Non vado mai indietro, ma sempre avanti, anche perchè ci sono sempre delle nuove funzioni, a parte sleep, che sono buone.A questo punto usa la 6.80
Quali?perchè ci sono sempre delle nuove funzioni, a parte sleep, che sono buone.