インターネットで見つけたチュートリアルには以下のようにインポートすることでカメラにアクセスできると書いてありましたが、
バージョンによっては?できないみたいで
// これはできない例 import {Component} from "@angular/core"; import *as Camera from "camera";
nativescript-cameraというカメラモジュールをインポートしてから起動すると無事に動きます!
$ npm install nativescript-camera --save $ tns livesync android
ちなみにこんな感じで簡単に関数作れます
// component 側 import {Component} from "@angular/core"; // このようにインポートすることで使用可能になる import Camera = require("nativescript-camera"); @Component({ moduleId: module.id, selector: "test", templateUrl: "./test.component.html", }) export class TestComponent { public capture() { Camera.takePicture().then((picture) => { //何かしらの処理を加える }) } } // html側 // angularでは(click)を頻繁に使っていましたけど、nativescriptでは(tap) を使用するみたいです // tapするとカメラが起動します <ActionBar title="Testのバー"> <NavigationButton text="戻る"></NavigationButton> <ActionItem text="カメラを起動する" (tap)="capture()"></ActionItem> </ActionBar> <StackLayout> <Label text="Hello world"></Label> </StackLayout>
参考にした記事
Camera
コメントを残す