2016-11-21 13 views
0

私は私のAndroidデバイス上でカメラを起動する必要がありますカメラボタンを使用する場合、それはクロムと私は、このエラーが発生しますが、検査可能データ/ io.ionic.starter /キャッシュ/ .Pic.jpg ClipData.Item.getUriを通じてアプリから露出()イオン2カメラアプリクラッシュ

私は無知だ、それはanywere ..

すべてのヘルプは高く評価され見つけることができません!

Cordova CLI: 6.4.0 
Ionic Framework Version: 2.0.0-rc.3 
Ionic CLI Version: 2.1.12 
Ionic App Lib Version: 2.1.7 
Ionic App Scripts Version: 0.0.45 
ios-deploy version: Not installed 
ios-sim version: Not installed 
OS: Windows 10 
Node Version: v6.9.1 
Xcode version: Not installed 

答えて

0

私は、このオプションを使用して行います。これは6.1であることをcordova platformアンドロイドを更新する解決しまった

Cordova CLI: 6.4.0 
Ionic Framework Version: 2.0.0-rc.1 
Ionic CLI Version: 2.1.8 
Ionic App Lib Version: 2.1.4 
Ionic App Scripts Version: 0.0.38 
Node Version: v6.8.1 
+0

私はそれを試みたが、動作するはずです他のチュートリアルが、それはまだクラッシュします。私はコードとは何の関係もないと思っています。 –

+0

blancプロジェクトで試してみてください。 – Lerb90

+0

これは、camera.getpictureが解決する前にエラーが起こることは決してないので、imageURIをこのように処理する機会は決してありません。 –

1

doCamera() { 
     Camera.getPicture({ 
      destinationType: Camera.DestinationType.FILE_URI, 
      saveToPhotoAlbum: true, 
      mediaType: Camera.MediaType.PICTURE, 
     }).then((imageURI) => { 
      this.changeImageString(imageURI); 
     }, (err) => { 
      console.log("Error: " + err); 
     }); 

} 

enter link description here

イオン性情報を参照してくださいAndroidデバイスでも実行.1カメラプラグインを更新します。

あなたのアンドロイドコルドバのプラットフォームのバージョンチェック:

cordova platform ls

Androidは6.0 <であるならば、あなたはそれを更新し、あなたのプロジェクトに更新されたバージョンを追加し、これは動作するはずする必要があります:

cordova platform update android

私の場合、アンドロイドプラットフォームのバージョンは更新されないので、明示的に6.1.1をインストールする必要があります。

cordova platform add [email protected] --save

それは6.1.1にアップデートし、私はそれから除去し、私のプロジェクトにコルドバのカメラプラグインを追加しました:

cordova plugin remove cordova-plugin-camera --save

、その後

cordova plugin add cordova-plugin-camera --save

アップ現在までのところ、cordova-plugin-cameraがインストールされていて、自分のconfig.xmlで見ることができました

デバイスに再びアプリケーションをデプロイしました。ionic run android、それが機能しました。

5

幅と高さを渡すと、クラッシュする問題が解決されます。

const options: CameraOptions = { 
     quality: 100, 
     targetWidth: 100, 
     targetHeight: 100, 
     destinationType: Camera.DestinationType.DATA_URL, 
     encodingType: Camera.EncodingType.JPEG, 
     mediaType: Camera.MediaType.PICTURE 
    } 

    Camera.getPicture(options).then((imageData) => { 
     // imageData is either a base64 encoded string or a file URI 
     // If it's base64: 
     this.idImage = imageData; 
     this.idImageSelected = 'data:image/jpeg;base64,' + imageData; 
    }, (err) => { 
     // Handle error 
    }); 
    } 
+0

それは働いた!これは文書化されるべきです。 –

+0

それも私のために働いた。ありがとうございました。 – Meysam