美文网首页
Android七牛上传图片——关于Zone的发现(基于7.3.X

Android七牛上传图片——关于Zone的发现(基于7.3.X

作者: 程序员文艺范 | 来源:发表于2016-12-14 11:34 被阅读0次

    一、记录1

    之前使用的七牛是7.0.x左右的版本开发上传图片,使用的方式是:

    UploadManager uploadManager =new UploadManager();
    data = <File对象、或 文件路径、或 字节数组>
    String key = <指定七牛服务上的文件名,或null>;
    String token = <从服务端SDK获取>;
    uploadManager.put(data, key, token,newUpCompletionHandler() {
        @Overridepublicvoidcomplete(String key, ResponseInfo info, JSONObject res){
        //res包含hash、key等信息,具体字段取决于上传策略的设置Log.i("qiniu", key +",\r\n "+ info +",\r\n "+ res);
        }
    },null);
    

    二、记录2

    最开始使用的是7.3.x,官方的实例:一开始没在意zone的取值,因为之前都是直接new UploadManager();但是在我的android测试机器上面,出现一个新的问题:

    {ver:7.3.2,ResponseInfo:1481682387799457,status:400,....
    ,sent:0,error:incorrect region, please use up-z2.qiniu.com}
    

    三、查阅七牛android使用指南

    发现如下一个关于zone的说明,我也在new UploadManager(config)内部新增一个config配置。最后实现图片上传

    // 国内https上传
    // boolean https = true;
    // Zone z1 = new AutoZone(https, null);
    // Configuration config = new Configuration.Builder().zone(z1).build();
    // 华东 
    //Configuration config = new Configuration.Builder().zone(Zone.zone0).build();
    //华北
    // Configuration config = new Configuration.Builder().zone(Zone.zone1).build();
    //华南
    // Configuration config = new Configuration.Builder().zone(Zone.zone2).build();
    //北美// 
    //Configuration config = new Configuration.Builder().zone(Zone.zoneNa0).build();
    // 海外https上传// String[] upIps = {"115.231.97.46"};
    // ServiceAddress up = new ServiceAddress("https://upload.qbox.me", upIps);
    // Zone z0 = new FixedZone(up, null);
    // Configuration config = new Configuration.Builder().zone(z0) .build();
    // 重用uploadManager。一般地,只需要创建一个uploadManager对象 
    UploadManager uploadManager = new UploadManager(config);
     data = <File对象、或 文件路径、或 字节数组> 
    String key = <指定七牛服务上的文件名,或 null>; 
    String token = <从服务端SDK获取>; uploadManager.put(data, key, token, new UpCompletionHandler() {
         @Override public void complete(String key, ResponseInfo info, JSONObject res) {
          //res包含hash、key等信息,具体字段取决于上传策略的设置 Log.i("qiniu", key + ",\r\n " + info + ",\r\n " + res);
       } 
    }, null);
    

    五、总结

    使用新的SDK时,记得重新查询相关的sdk新用法。以此记录,欢迎留言!

    相关文章

      网友评论

          本文标题:Android七牛上传图片——关于Zone的发现(基于7.3.X

          本文链接:https://www.haomeiwen.com/subject/rxjimttx.html