google driver云盘接入开发记录

1.参考资料

  • Google driver 开发API :https://developers.google.com/drive/
  • 说明文档:https://developers.google.com/drive/android/intro
  • 官方demo下载地址:https://github.com/googledrive/android-demos

2.使用步骤

  • 引入包: compile 'com.google.android.gms:play-services-drive:11.0.4'
  • 创建签名文件,获取sha1值,并在Google账号中增加凭证;
  • 获取sha1命令: keytool -list -v -keystore myhypenote.jks
  • 根据需求使用相应的API进行文件上传,下载,备份;查看demo中,每一个处理使用方式写的很详细;

3.部分重要代码

  • 上传文件
     Drive.DriveApi.newDriveContents(mGoogleApiClient).setResultCallback(driveContentsCallback);
   //创建 文件的回调
    final private ResultCallback driveContentsCallback =
            new ResultCallback() {
                @Override
                public void onResult(DriveApi.DriveContentsResult result) {
                    if (!result.getStatus().isSuccess()) {
                        showMessage("Error while trying to create new file contents");
                        return;
                    }

                    final DriveContents  driveContents= result.getDriveContents();
                    new Thread(new Runnable() {
                        @Override
                        public void run() {

                            DriveFolder folder = mFolderDriveId.asDriveFolder();

                            Realm realm=Realm.getDefaultInstance();
                             File  file=new File(realm.getPath());

                            OutputStream outputStream = driveContents.getOutputStream();

                            try {
                                InputStream   input = new FileInputStream(file);
                                byte[] byt = new byte[input.available()];
                                outputStream.write(byt);
                            }  catch (IOException e) {
                                e.printStackTrace();
                            }


                            MetadataChangeSet changeSet = new MetadataChangeSet.Builder()
                                    .setTitle("default.realm")
                                    .setMimeType("files/*")
                                    .setStarred(true).build();

                            folder.createFile(mGoogleApiClient, changeSet, driveContents).setResultCallback(fileCallback);
                        }
                    }).start();


                }
            };

4.可能出现的问题

  • 问题一: 运行demo,或者自己新建项目失败,出现无法连接情况?
  • 解决方式:
  1. 检查是否增加账户访问权限
 
  1. 增加签名文件配置:


    google driver云盘接入开发记录_第1张图片
    增加签名文件配置.png
google driver云盘接入开发记录_第2张图片
image.png

5.最后!

  • 对于引用第三方的服务,基本上在其官方文档都有比较完善的说明和demo,跟着其文档一步一步来,遇到问题多Google搜索下就好。对于Google driver的使用,暂时这么多,后续有深入使用再研究,欢迎交流。

你可能感兴趣的:(google driver云盘接入开发记录)