L'application Phonegap se ferme une fois que l'appareil photo a capturé l'image. [Android]
J'obtiens une erreur avec Phonegap 1.4.1.
L'app phonegap-je créer redémarre après je suis retourné à l'application après avoir pris une photo.
Voici le code que j'utilise:
function capturePhoto() {
//Take picture using device camera and retrieve image as base64-encoded string
navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50, destinationType: Camera.DestinationType.FILE_URI });
}
function onPhotoURISuccess(imageURI) {
//Uncomment to view the image file URI
//console.log(imageURI);
//Get image handle
//
var largeImage = document.getElementById('largeImage');
//Unhide image elements
//
largeImage.style.display = 'block';
//Show the captured photo
//The inline CSS rules are used to resize the image
//
largeImage.src = imageURI;
}
source d'informationauteur Edwin Toh
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème pour les 2 jours jusqu'à ce que je mouillage que vous devriez avoir accès à l'autorisation de contracter le fichier image que vous avez pris dans l'appareil. Par défaut il n'y a pas d'autorisation de retour de l'image afin qu'elle retourne null et que votre application se bloque.
Si vous utilisez Cordova/PhoneGap dans XCode, alors vous devez également créer les Config.xml fichier dans le dossier www et donner l'autorisation d'accès au fichier image.
Si vous travaillez sur Android, puis donner de l'autorisation sur le AndroidManifest.xml fichier.
vous pouvez trouver tout pour la config.xml fichier ici:
https://build.phonegap.com/docs/config-xml
utiliser de premier plan de l'appareil photo plugin sa va résoudre ce problème:
https://code.google.com/p/foreground-camera-plugin/
Peut être votre mobile la mémoire n'est pas assez,Ce problème n'est pas réellement sur Phonegap. C'est un problème commun sur les applications android trop.Il se produit parce que lorsque l'appareil est déclenché, l'android activité va de fond (onStop de l'état), en attente de l'appareil photo pour prendre la photo. Puis le GC arrive et tue l'activité pour libérer de la mémoire avant la conclusion de la caméra d'action, et lorsque l'appareil photo est fait de votre activité est déjà mort. C'est pourquoi l'application est redémarrée.
Voici mon suggère
1 .Remplacer cramer plugin, évitez d'utiliser des plugins de commencer la collecte des ordures, (http://code.google.com/p/foreground-camera-plugin/http://code.google.com/p/foreground-gallery- plugin /)
2. Détecte la mémoire en cas d'insuffisance de tuer d'autres processus actif de libérer de la mémoire
3. Améliorer leur survie, essayez d'éviter la libération de la mémoire dans le système sélectionné.
Assurez-vous que votre activité dans votre tag AndroidManifest.xml a l'attribut suivant:
Le changement d'orientation sera la cause de votre application d'être rechargé. Si vous êtes réellement obtenir un crash puis "adb logcat" pour capturer l'erreur qui se produit.
Ce problème n'est pas réellement sur Phonegap. C'est un problème commun sur les applications android trop.
Voir PhoneGap caméra redémarrage de l'application
Abaissement à 25 et à l'aide de
<preference name="android-minSdkVersion" value="7" />
m'a aidé!Pour moi, l'astuce a été de modifier le manifeste à partir de :
à
Il fonctionne maintenant, mais je n'ai aucune idée de pourquoi...
J'ai un Samsung Galaxy Note II. J'ai eu le même problème. J'ai changé cela dans le AndroidManifest.xml et maintenant, il fonctionne sur Samsung et HTC Thunderbolt
DATA_URI n'est pas recommandée, à la fois, il ne renvoie pas à l'application. Parce que DATA_URI donne base64 de la chaîne, de sorte que certains appareils ne disposent pas de suffisamment de mémoire pour cela. utilisation FILE_URI seulement, il est sûr pour votre appareil android.
si vous avez besoin d'Base64 chaîne signifie que vous secrètes après appel captureSuccess à l'aide de Fichier readAsDataURL
ref ce lien
Essayez de diminuer le paramètre de qualité de 25. Certains appareils ne disposent pas de suffisamment de mémoire pour 50.