Autore Topic: Crash causato da downgrade api?  (Letto 662 volte)

Offline tonno16

  • Utente storico
  • *****
  • Post: 1184
  • Respect: +57
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Crash causato da downgrade api?
« il: 30 Luglio 2014, 15:45:31 CEST »
0
Salve gente. Ho un applicazione che gira perfettamente su 4.4.4 motorola g.

nel build.gradle ho questo:

Codice (Java): [Seleziona]
android {
    compileSdkVersion 19
    buildToolsVersion '19.1.0'

    defaultConfig {
        applicationId "simplealarm.tonno16.com.gpsms"
        minSdkVersion 16
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

mettendo minSdkVersion  settato a 10, ho fatto il sync che propone in automatico android studio.
Tutto perfetto. Ora quando metto l'app su emulatore con un old versione oppure su un terminale vero e proprio, l'app crasha all' inizio.

Ho sbagliato qualcosa?

Faccio un esempio. magari ho scritto dei motodo con api > 15, e poi ora che ho settato 10 alcuni metodo danno errore.
Ma penso che AS debba segnalarmi se trova metodi incombatibili, o mi sbaglio?

Offline ciopper90

  • Utente junior
  • **
  • Post: 106
  • Respect: +4
    • Mostra profilo
Re:Crash causato da downgrade api?
« Risposta #1 il: 31 Luglio 2014, 09:02:34 CEST »
0
Ciao,controlla nel logcat che dovrebbe segnalati dove sta problema!!

Offline tonno16

  • Utente storico
  • *****
  • Post: 1184
  • Respect: +57
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Crash causato da downgrade api?
« Risposta #2 il: 31 Luglio 2014, 11:51:54 CEST »
0
Speravo in una soluzione veloce, in quanto il terminale testato con vecchia versione non è riconosciuto dal pc coi driver attuali.
Comunque provvedo

Offline GabMarioPower

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 606
  • Respect: +152
    • Github
    • Google+
    • gabrielemariotti
    • GabMarioPower
    • Mostra profilo
  • Play Store ID:
    GAB+MARIO+DEV
  • Sistema operativo:
    Ubuntu 14.04 , Win 10
Re:Crash causato da downgrade api?
« Risposta #3 il: 31 Luglio 2014, 11:56:59 CEST »
0
Speravo in una soluzione veloce, in quanto il terminale testato con vecchia versione non è riconosciuto dal pc coi driver attuali.
Comunque provvedo

Più veloce di leggere un logcat? Usa un emulatore (genymotion).
Oppure apri i file e troverai gli errori.

Offline tonno16

  • Utente storico
  • *****
  • Post: 1184
  • Respect: +57
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Crash causato da downgrade api?
« Risposta #4 il: 31 Luglio 2014, 12:09:40 CEST »
0
non ho idea del perchè ma con tale configurazione:
Codice (Java): [Seleziona]
android {
    compileSdkVersion 10
    buildToolsVersion '19.1.0'

    defaultConfig {
        applicationId "simplealarm.tonno16.com.gpsms"
        minSdkVersion 10
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile files('libs/gson-2.2.4.jar')
}

l'app si avvia senza crashare, cosa che non succedeva ieri, quindi già mi ritengo fortunato.
In ogni caso alla pressione di un tasto, che dovrebbe creare una notifica, attivare un alarmmanager, il quale receiver avvia un locationListener solo se il gps è attivo, mi causa un altro crash....forse dovuto alla mancanza del gps nel terminale.
Difatti su smarphone si dovrebbe aprire un dialog che avvisa dell abilitazione del gps. Dialog che non compare sul emulatore.

di seguito il log:

Codice (Javascript): [Seleziona]
7-31 10:04:31.170      444-444/simplealarm.tonno16.com.gpsms E/dalvikvm﹕ Could not find class 'android.app.Notification$Builder', referenced from method simplealarm.tonno16.com.gpsms.MyActivity.showNotification
07-31 10:06:41.649      444-444/simplealarm.tonno16.com.gpsms E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.NoClassDefFoundError: android.app.Notification$Builder
            at simplealarm.tonno16.com.gpsms.MyActivity.showNotification(MyActivity.java:313)
            at simplealarm.tonno16.com.gpsms.MyActivity.startAlarm(MyActivity.java:259)
            at simplealarm.tonno16.com.gpsms.MyActivity.onClick(MyActivity.java:237)
            at android.view.View.performClick(View.java:2485)
            at android.view.View$PerformClick.run(View.java:9080)
            at android.os.Handler.handleCallback(Handler.java:587)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:123)
            at android.app.ActivityThread.main(ActivityThread.java:3683)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:507)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
            at dalvik.system.NativeStart.main(Native Method)

Offline GabMarioPower

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 606
  • Respect: +152
    • Github
    • Google+
    • gabrielemariotti
    • GabMarioPower
    • Mostra profilo
  • Play Store ID:
    GAB+MARIO+DEV
  • Sistema operativo:
    Ubuntu 14.04 , Win 10
Re:Crash causato da downgrade api?
« Risposta #5 il: 31 Luglio 2014, 12:33:18 CEST »
0
Innanzitutto non puoi usare questo

Codice: [Seleziona]
compileSdkVersion 10Devi ovviamente compilare con 19 (visto che è il tuo target).

Detto questo, android.app.Notification$Builder non esiste con api 10.
Devi usare il NotificationBuilder che trovi nella support library.