1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- (function (app) {
- app.factory('camera', ["$q", function ($q) {
- return {
- chooseImage: function (cameraOptions) {
- var deferred = $q.defer();
- var defaultCameraOptions = {
- quality: 50,
- sourceType: 1,
- allowEdit: true,
- encodingType: 0,//0为jpg,1为png
- targetHeight: 112,
- targetWidth: 112
- };
- var options = angular.extend(defaultCameraOptions, cameraOptions);
- var sheetOptions = {
- title: '选择图片方式',
- buttonLabels: ['拍摄照片', '从图库选择'],
- addCancelButtonWithLabel: '取消',
- androidEnableCancelButton: true
- };
- window.plugins.actionsheet.show(sheetOptions, function (index) {
- switch (index) {
- case 1: //拍摄图片
- options.sourceType = 1;
- break;
- case 2://从图库选择
- options.sourceType = 2;
- break;
- default:
- deferred.resolve();
- break;
- }
- navigator.camera.getPicture(function (imageUri) {
- if (imageUri) {
- deferred.resolve(imageUri);
- } else {
- deferred.reject('图片未找到');
- }
- }, function (error) {
- deferred.reject(error);
- }, options);
- });
- return deferred.promise;
- }
- };
- }]);
- })(angular.module('app.services'));
|