我正在创建一个使用在 Google App Engine(Java) 中创建的 REST api 的 android 应用程序。
我还想存储一些用户在使用我的应用程序时上传的图像和视频。
我一直在寻找存储该数据的最佳位置,经过一些冲浪后,我遇到了 Backblaze,但找不到任何教程,backblaze 仅用于备份数据还是也可以与代码一起使用?
我正在创建一个使用在 Google App Engine(Java) 中创建的 REST api 的 android 应用程序。
我还想存储一些用户在使用我的应用程序时上传的图像和视频。
我一直在寻找存储该数据的最佳位置,经过一些冲浪后,我遇到了 Backblaze,但找不到任何教程,backblaze 仅用于备份数据还是也可以与代码一起使用?
似乎有一个(非官方的?)Java 库可以与 Backblaze 一起使用。
它确实说它需要 Java 8,而 Android 不这样做,因此您需要将其作为 Maven 项目下载并使用 Java 6 或 7 构建mvn package
,并将其作为依赖项添加到您的项目中。如果在该代码中使用它们,您可能还需要修复一些 Java 8 特定的东西。
自述文件中的示例代码
B2Session session = B2API.authorizeAccount("accountID", "applicationKey");
//Create the Bucket
B2Bucket bucket = B2API.createBucket(session, "ExampleBucket", BucketType.ALL_PRIVATE);
//Retrieve an upload URL
B2UploadRequest request = B2API.getUploadURL(session, bucket);
//Upload the file
B2File file = B2API.uploadFile(request, new File("test.txt"), "test.txt");
现在有一个用于 Backblaze B2 存储 API 的官方 Java SDK,称为b2-sdk-java
.
你可以使用我现在正在开发的库.. AndroidBackBlazeHelper
//TODO replace applicationKey with your key
//TODO replace applicationKeyId with your key
BlazeClient client = new BlazeClient(this,applicationKeyId,applicationKey);
BlazeFileUploader blazeFileUploader =
new BlazeFileUploader( client , bucketId); //TODO replace bucketId with your Bucket Id
blazeFileUploader.startUploading(fileUri, fileName , contentType); // replace the content type with mime type or choose one from FileTypes.class e.g. FileTypes.IMAGE_TYPE