IONIC4 使用照相机以及从图库选择照片

1.照相机


1. 下载依赖

        ionic cordova plugin add cordova-plugin-camera

        npm install @ionic-native/camera

2. app.module.ts 导入

         import { Camera } from '@ionic-native/camera/ngx';

3. 使用

openGallery(): Promise<Array<string>> {
return new Promise((resolve, reject) => {
  let arr = new Array<string>();
  const options: ImagePickerOptions = {
    quality: 100,
    maximumImagesCount: 3,
    outputType: 1
  }

  this.imagePicker.getPictures(options).then((results) => {
    for (var i = 0; i < results.length; i++) {
      arr.push('data:image/jpeg;base64,' + results[i]);
      console.log("黄 url " + results[i]);

    }
    resolve(arr);
  }, (err) => {
    resolve(new Array());
  });
})  }

注意: IOS 10 需要在 config.xml 里的 <platform name='ios'> 声明权限

<config-fileparent="NSCameraUsageDescription"platform="ios"target="*-Info.plist"><string>You can take photos</string></config-file>

官网地址:https://ionicframework.com/docs/native/camera/

2.图库


1.下载依赖

    ionic cordova plugin add cordova-plugin-telerik-imagepicker

    npm install @ionic-native/image-picker

2. app.module.ts 导入

    import { ImagePicker   } from '@ionic-native/image-picker/ngx';

3. 使用

openGallery(): Promise<Array<string>> {
return new Promise((resolve, reject) => {
  let arr = new Array<string>();
  const options: ImagePickerOptions = {
    quality: 100,
    maximumImagesCount: 3,
    outputType: 1
  }
  this.imagePicker.getPictures(options).then((results) => {
    for (var i = 0; i < results.length; i++) {
      arr.push('data:image/jpeg;base64,' + results[i]);
      console.log(  results[i]);
    }
    resolve(arr);
  }, (err) => {
    resolve(new Array());
  });
}) }

官网地址:https://ionicframework.com/docs/native/image-picker/

3. 使用问题

使用图库插件选择图片的时候会发现界面为英文界面,需修改插件源码,目前只修改了android 源码,IOS的以后更新

项目 platforms\android\app\src\main\res  目录下

    增加values-zh 文件,新建  multiimagechooser_strings_hu.xml 文件

multiimagechooser_strings_hu.xml 文件内容

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <string name="multi_app_name">圖片選擇器</string>
  <string name="free_version_label">還可以選擇 %d 張圖片</string>
  <string name="error_database">打開圖庫出錯</string>
  <string name="requesting_thumbnails">請求縮略圖,請耐心等候</string>
  <string name="multi_image_picker_processing_images_title">正在處理...</string>
  <string name="multi_image_picker_processing_images_message">請稍候...</string>
  <string name="discard" translatable="false">取消</string>
  <string name="done" translatable="false">確認</string>
</resources>  

\platforms\android\app\src\main\java\com\synconset 目录下
MultiImageChooserActivity.java 类 197行 修改


1565170190.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容