问题描述
在我的 phonegap
应用程式中拍摄图片时,我想检查相机是否存在,然后再显示两种来源类型。例如,iPad 1没有相机,因此我不想显示弹出窗口从相机
和我的照片中选择来源类型
。在 phonegap
中是否有告诉我相机存在于此设备中的东西?
I want to check camera existence before showing the two source types when taking a picture in my phonegap
application. For example, iPad 1 doesn't have an Camera, therefore I don't want to show the popup to select source type from Camera
and My Photos
. Is there something in phonegap
that tell me camera exists in this device or not?
推荐答案
我需要这样做,所以我把它添加到一个插件,我做了各种任务。目前只有iOS版本。
I needed to do just this, so I added it to a plug in that I made to do various tasks. Only iOS versions so far.
TomPhonegapUtility.h
TomPhonegapUtility.h
#import <Foundation/Foundation.h>
#import <Cordova/CDV.h>
@interface TomPhonegapUtility : CDVPlugin
- (void) isCameraAvailable:(CDVInvokedUrlCommand*)command;
@end
TomPhonegapUtility.m
TomPhonegapUtility.m
#import "TomPhonegapUtility.h"
#import <Cordova/CDV.h>
@implementation TomPhonegapUtility
- (void) isCameraAvailable:(CDVInvokedUrlCommand*)command {
CDVPluginResult *pluginResult = nil;
if ([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera]) {
pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsInt:1];
} else {
pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsInt:0];
}
[self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
}
@end
TomPhonegapUtility.js
TomPhonegapUtility.js
function TomPhoneGapUtility () {
this.isCameraAvailable = function(successCallback) {
cordova.exec(successCallback, function(){}, "TomPhonegapUtility", "isCameraAvailable", []);
}
}
如何使用
var util = new TomPhoneGapUtility();
util.isCameraAvailable(function(hasCamera) {
if (hasCamera) alert("YES");
else alert("NO");
});
这篇关于检查ios phonegap中的相机存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!