zoukankan      html  css  js  c++  java
  • 小程序相册授权后保存图片到相册

    小程序相册授权和保存图片到相册

      //保存图片
      saveImgToAlbum: function () {
        const _this = this;
        console.log('has.this.data.tempFilePath', _this.data.tempFilePath);
        if (!!_this.data.tempFilePath) {
          tt.saveImageToPhotosAlbum({
            filePath: _this.data.tempFilePath,
            success(rres) {
              console.log(`tt.saveImageToPhotosAlbum.success`, rres);
    
              //成功提示
              tt.showToast({
                title: "图片结果保存成功",
                duration: 3000,
                icon: 'success',
                success(tres) {
                  console.log(`${tres}`);
                },
                fail(tres) {
                  console.log(`showToast调用失败`, tres);
                }
              });
            },
            complete(rres) {
              console.log(`tt.saveImageToPhotosAlbum.complete`, rres);
            },
            fail(rres) {
              console.log(`tt.saveImageToPhotosAlbum.fail`, rres);
            }
          });
        } else {
          console.error('this.data.tempFilePath.isEmpty', _this.data.tempFilePath);
        }
      },
      //相册授权
      saveImgAuth: function () {
        const _this = this;
        tt.getSetting({
          success: function (res) {
            console.log('tt.getSetting.success', res);
    
            console.log('is.scope.album', res.authSetting['scope.album']);
            if (res.authSetting['scope.album'] && res.authSetting['scope.album'] == true) {//已授权
              console.log('has.scope.album');
    
              console.log('start.saveImg');
              //保存图片
              _this.saveImgToAlbum();
            } else {//未授权
              console.error('non.scope.album');
    
              console.log('start.tt.authorize');
              //授权
              tt.authorize({
                scope: "scope.album",
                success(rres) {
                  // 用户同意授权
                  console.log('tt.authorize.success', rres);
    
                  console.log('start.saveImg');
                  //保存图片
                  _this.saveImgToAlbum();
                },
                complete(rres) {
                  console.log('tt.authorize.complete', rres);
                },
                fail(rres) {
                  // 用户取消授权 或 取消过授权
                  console.error('tt.authorize.fail', rres);
    
                  tt.showModal({
                    title: "系统提示",
                    content: "打开相册权限才能保存图片哦!",
                    success(mres) {
                      if (mres.confirm) {
                        // console.log("confirm, continued");
                        console.log('start.tt.openSetting');
                        // 取消过授权需要打开设置页面
                        tt.openSetting({
                          success: function (rrres) {
                            console.log('tt.openSetting.success', rrres);
                            if (rrres.authSetting['scope.album'] && rrres.authSetting['scope.album'] == true) {//已授权
                              console.log('start.saveImg');
                              //保存图片
                              _this.saveImgToAlbum();
                            }
                          },
                          complete: function (rrres) {
                            console.log('tt.openSetting.complete', rrres);
                          },
                          fail: function (rrres) {
                            console.log('tt.openSetting.fail', rrres);
                          },
                        });
                      } else if (mres.cancel) {
                        // console.log("cancel, cold");
                        //成功提示
                        tt.showToast({
                          title: "图片结果保存失败",
                          duration: 3000,
                          icon: 'fail',
                          success(tres) {
                            console.log(`${tres}`);
                          },
                          fail(tres) {
                            console.log(`showToast调用失败`, tres);
                          }
                        });
                      } else {
                        // what happend?
                      }
                    },
                    fail(mres) {
                      console.log(`showModal调用失败`);
                    }
                  });
                },
              });
            }
          },
          complete: function (res) {
            console.log('tt.getSetting.complete', res);
          },
          fail: function (res) {
            console.error('tt.getSetting.fail', res);
          },
        });
      },

    本文地址:

    https://www.cnblogs.com/stumpx/p/13183779.html

  • 相关阅读:
    有return的情况下try catch finally的执行顺序
    java面试题
    JSTL常用标签
    文件引入路径设置
    JavaScript配合button.onclick()使用总结
    Java NIO vs IO
    如何在Oracle官网下载历史版本JDK
    常量池之String.intern()方法
    MyeclipseJRE版本设置
    JVM常用参数配置
  • 原文地址:https://www.cnblogs.com/stumpx/p/13183779.html
Copyright © 2011-2022 走看看