Mikiya Posté(e) 25 février 2012 Share Posté(e) 25 février 2012 Bonjour à tous Alors voila , je suis étudiant et je réalise une petite appli concernant les menus du RU a coté de chez moi. Jusque la tout se passe bien, mais la, j'ai voulu ajouter une fonctionnalité qui le fait un peu butter :s Etant donné que j'ai pas envie de payer l'accès au market pour cette petite appli et que j'ai un serveur perso, j'ai eu l'idée de passer par lui pour me faire un système de "mise a jour" maison (quand l'appli se lance, elle check un fichier texte avec le numero de version dedans, si il ne correspond pas à la version installée, je récupère sur le serveur le nouvel apk). Et c'est la que les ennuies arrivent , une fois l'apk complètement dispo, je fais ça : onComplete=new BroadcastReceiver() { public void onReceive(Context ctxt, Intent intent) { Intent intent1 = new Intent(Intent.ACTION_VIEW); intent1.setDataAndType(Uri.fromFile(new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).toString()+"/"+nameAPK)), "application/vnd.android.package-archive"); startActivity(intent1); } }; ça me lance bien l'installeur classique d'apk, , il me demande de remplacer, je valide, ça débute l'installation et se coupe d'un coup, retour au bureau... tout ça me fait donc fortement penser à un soucis sur les permissions, actuellement j'ai mis : <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.INSTALL_PACKAGES"/> (concernant la derniere, je l'ai mise mais il me semble avoir lu que elle n'est pas accordée aux applis tierce en dehors de /system de toute facon ... mais avec ou sans, meme resultat) Quelqu'un a t il une piste de pourquoi l'installeur se coupe ainsi ? Merci d'avance ! :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Mikiya Posté(e) 25 février 2012 Auteur Share Posté(e) 25 février 2012 Problème finalement résolu, il fallait que je ferme explicitement bien l'activité avant que l'installeur ne tente d'installer la nouvelle version (donc juste après l'envoi de l'intent, j'appelle finish() ), sinon conflit. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.