1

PhoneGapアプリに単純なリンクがあり、次のメソッドをトリガーします。

        navigator.camera.getPicture(function(imageData) {
            console.log('Success');
            $('#image').attr('src', "data:image/jpeg;base64," + imageData);
        }, function(errorMsg) {
            console.log('Error');
        }, {
            quality: 30,
            destinationType: Camera.DestinationType.DATA_URL,
            correctOrientation: true
        }); 

iPhoneとiPadでは、70〜80%の確率で動作します。ユーザーがクリックすると、カメラが開き、写真を撮り、カメラが閉じ、successメソッドのconsole.log()がトリガーされ、次のことができます。画像ソースをキャッチします。他の時間は何も起こりません。成功またはエラーのいずれかのコールバックが呼び出されます。カメラが開き、写真を撮ります。カメラが閉じてアプリが表示されますが、何も起こりません。何が問題なのかわかりません。

ストレージの問題を防ぐために、navigator.camera.cleanup()をトリガーします-リンクをクリックするたびにメソッドを実行します。しかし、問題はまだ存在します。iPhone、iPad、および私のAndroidシミュレーター。最初に、写真を撮った後にアプリケーションが再起動すると思いましたが、これは発生していません(deviceready-Eventが発生している場合はconsole.logを作成します)。

AndroidやiOSでは問題ないと思いますが…わかりません。

4

1 に答える 1

-1

必ず onDeviceReady で呼び出してください

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady()
{
    your code here!
}
于 2012-10-16T21:50:52.270 に答える