2016-11-05 75 views
1

我對Ionic 2,Cordova &手機相對較新。我遵循示例應用程序構建了一個簡單的相機應用程序。它與其他幾個問題中的代碼非常相似。在我的android手機上運行,​​相機拍攝照片,但不顯示圖像。顯示「takePicture fired」日誌條目,但沒有其他日誌條目。有什麼我失蹤像權限問題?無法理解爲什麼我甚至沒有看到日誌條目。Ionic 2相機不能在手機上工作

相關代碼:

的mypage.html

<button ion-button block color="primary" (click)="takePicture()">Take Picture</button> 
... 

<img [src]="base64Image" *ngIf="base64Image" /> 

mypage.ts

export class MyPage { 

    public base64Image: string; 

    constructor(public navCtrl: NavController) { 
} 

    takePicture() { 
    console.log("takePicture fired."); 
    Camera.getPicture({ 
     destinationType: Camera.DestinationType.DATA_URL, 
     sourceType: Camera.PictureSourceType.CAMERA, 
     encodingType: Camera.EncodingType.JPEG, 
     targetWidth: 1000, 
     targetHeight: 1000 
    }).then((imageData) => { 
     // imageData is a base64 encoded string 
     this.base64Image = "data:image/jpeg;base64," + imageData; 
     if (this.base64Image) { 
     console.log("base64Image = " + this.base64Image); 
     } 
     else { 
     console.log("base64Image = NULL"); 
     } 
    }, (err) => { 
     console.log("An error occurred."); 
     console.error(err); 
    }); 
    }); 

回答

0

第1步:在您的class.ts

import { Camera } from 'ionic-native'; 

步驟2:HTML

<img [src]="base64Image" *ngIf="base64Image" (click)="captureImage()"/> 

第3步:

captureImage(){ 

     Camera.getPicture({ 
       quality: 100, 
       saveToPhotoAlbum: true, 
       destinationType: Camera.DestinationType.FILE_URI, 
       sourceType: Camera.PictureSourceType.CAMERA, 
       allowEdit: true, 
       correctOrientation: false 
       }) 
       .then((result) => { 
        this.base64Image = result; 
        console.log('Image URI: ' + this.base64Image); 
       }, (error) => { 
       console.log("ERROR -> " + JSON.stringify(error)); 
      }); 
} 

它的正常工作......

乾杯!

相關問題