2015-09-23 24 views
14

Ho aggiornato la mia app e l'ho provata sul mio dispositivo. Tutto funziona bene se provo l'app tramite il pulsante Esegui in Eclipse, ma se esporto in un apk e provo a installare l'apk fallisce.Impossibile installare il mio apk generato.

Nessun codice di errore o altro, solo che l'app non è stata installata.

Qualche idea del motivo? Ho modificato solo alcune cose nella mia app: ho rimosso la lib di basegameutils dalla mia app e ho eseguito la migrazione alla nuova API senza basegameutils. Ecco fatto (tranne per alcune correzioni di bug ma che non può essere la causa).

Ho già riavviato eclissi e pulito tutti i progetti più volte.

Il sdk di destinazione è 22 e sto usando le più recenti immagini di sistema e così via per quel livello di API (la mia divce è un nexus 6 di riserva con 5.1.1 in esecuzione). Ho anche aggiornato i miei strumenti di compilazione a 23.0.1 da 22.0.1 e rimosso la versione 22. È questa la causa?

Ho anche provato a caricare l'apk nella console di sviluppo e non ci sono stati errori.

Grazie per il vostro aiuto.

EDIT:

L'uscita logcat dice la firma non corrisponde alla versione precedentemente installata.

Se provo a installare la versione live corrente tramite il Play Store, c'è anche un messaggio di errore che dice che non posso installare questa app perché un altro utente ha già installato una versione incompatibile su questo dispositivo (ma non l'ho installato e io non avere più utenti sul dispositivo).

Se nel menu dell'app sono presenti le impostazioni, la mia app viene visualizzata in fondo all'elenco, ma c'è una nota che dice che l'app non è installata per gli utenti. Se faccio clic su di esso tutti i pulsanti sono non modificabili (quindi non posso disinstallarlo).

Cosa sta succedendo?

+0

anche l'output logc. –

+2

@ IntelliJ Amiya: "Eseguo il test dell'app tramite il pulsante Esegui in eclissi" Penso che stia lavorando su Eclipse .. !! – AndiGeeky

+0

Come stai generando l'apk? –

risposta

7

Ho trovato una soluzione ma non ho ancora idea di cosa abbia causato il problema.

da qualche parte sul mio dispositivo la mia app è stata ancora installata anche se non è stata visualizzata nel cassetto app e il negozio di giochi mi ha detto lo stesso. Nel menu delle impostazioni/app la mia app era ancora presente (come ho accennato nella modifica del mio post originale), quindi ho fatto clic su di esso. Se fai clic sul pulsante del menu puoi scegliere unisntall per tutti gli utenti che hanno fatto il trucco. ora posso installare nuovamente il mio apk.

Non ho idea di come sia successo ma ci andate, spero che questo aiuti.

EDIT:

ho avuto lo stesso problema come questo ragazzo ha avuto. la risposta accettata laggiù è molto più bello di mio testo mal foramtted;)

"You cannot install this app because another user has already installed an incompatible version on this device"

+0

Tale situazione può verificarsi se si dispone di più account su un singolo dispositivo. Se si disinstalla l'app, non è disponibile su un account (o su tutti) ma è ancora disponibile in memoria. Se provi a installare l'app firmata con una chiave diversa da quella che genererà un errore. – kreatywny

+0

Android Studio installa l'app per tutti gli utenti durante il debug. Mi sarei aspettato un messaggio di errore migliore quando l'installazione non è riuscita. – zappullae

1

Non è possibile eseguire apk firmato direttamente nel dispositivo Android.

mi si desidera eseguire il tuo apk quindi seguire i passaggi qui sotto:

1) Go to your device settings 

2) In setting you find applications 

3) In application checked unknown sources 

Questo vi permetterà di eseguire l'apk firmato senza scaricare dal Play Store.

o provare questo link:

"You cannot install this app because another user has already installed an incompatible version on this device"

+0

L'ho già fatto. Sono stato in grado di eseguire i miei apk per anni ha smesso di funzionare oggi. – user3254126

+0

Okey hai cambiato il tuo keystore? – KishuDroid

+0

no, non l'ho fatto. come ho detto, posso caricare l'apk sulla console di sviluppo senza errori. Ho trovato la soluzione però. – user3254126

12

La firma è cambiato, così come lei ha ricordato è necessario disinstallare la versione precedente. Si è tentato di disinstallare dall'interfaccia utente del dispositivo e che non riesce - in modo da provare dalla riga di comando:

adb your_package_name disinstallazione

visto su dispositivi Nexus, di tanto in tanto solo da riga di comando disinstalla lavoro.

+0

Ho trovato una soluzione, ma la soluzione probabilmente avrebbe funzionato anche io (ma non so se). Grazie! – user3254126

+0

+2 TanX molto, salva la mia giornata :) –

9

stavo affrontando lo stesso problema e ho risolto in questo modo, per la corrente Updated Android Studio 2.3

  1. Build> Genera Signed apk.
  2. Creare Keystore path.
  3. Put Password, alias, key password.
  4. Build type selezionare di conseguenza (ad esempio per rilasciare in playstore utilizzare release).
  5. Signature Version selezionare entrambe le caselle di controllo V1 e V2.
  6. Finsih.
  7. Vai all'apk da explorer e utilizzalo per il tuo playstore o in dispositivi come file apk firmato e certificato.
46

Per me, selezionando Firma versione v1 e v2 sia risolto il problema enter image description here

+1

ha funzionato anche per me +1 – kampangala

+0

Ha funzionato per me +1 –

+0

Anch'io + 1. Grazie – Apollon

0

ho ottenuto il salvataggio errore solo in caso qualcuno affronta questo. Per me è stato perché ho più progetti per la stessa app al telefono. è necessario eliminare le versioni precedenti dell'app dal telefono.

0

Il problema è perché si dispone di una versione dell'app di test. Quindi, non stai davvero aggiornando l'app! Queste sono due app diverse. Devi prima disinstallare la versione precedente (testing) in modo da poter installare la versione di rilascio (firmata) della tua app.

Problemi correlati