- removed dropbox files
This commit is contained in:
parent
76e6537b0f
commit
4dcc8dc46f
4 changed files with 0 additions and 201 deletions
|
@ -197,8 +197,6 @@ dependencies {
|
|||
/* Dagger2 - We are going to use dagger.android which includes
|
||||
* support for Activity and fragment injection so we need to include
|
||||
* the following dependencies */
|
||||
implementation 'com.dropbox.core:dropbox-core-sdk:2.1.1'
|
||||
|
||||
annotationProcessor "com.google.dagger:dagger-compiler:$dagger_version"
|
||||
annotationProcessor "com.google.dagger:dagger-android-processor:$dagger_version"
|
||||
kapt "com.google.dagger:dagger-android-processor:$dagger_version"
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
package info.nightscout.androidaps.plugins.general.maintenance
|
||||
|
||||
class DropboxUploader {
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -1,72 +0,0 @@
|
|||
package info.nightscout.androidaps.plugins.general.maintenance.dropbox;
|
||||
|
||||
import android.content.Context;
|
||||
import android.net.Uri;
|
||||
import android.os.AsyncTask;
|
||||
|
||||
import com.dropbox.core.DbxException;
|
||||
import com.dropbox.core.v2.DbxClientV2;
|
||||
import com.dropbox.core.v2.files.FileMetadata;
|
||||
import com.dropbox.core.v2.files.WriteMode;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
|
||||
public class UploadFileTask extends AsyncTask<String, Void, FileMetadata> {
|
||||
|
||||
private final Context mContext;
|
||||
private final DbxClientV2 mDbxClient;
|
||||
private final Callback mCallback;
|
||||
private Exception mException;
|
||||
|
||||
public interface Callback {
|
||||
void onUploadComplete(FileMetadata result);
|
||||
void onError(Exception e);
|
||||
}
|
||||
|
||||
UploadFileTask(Context context, DbxClientV2 dbxClient, Callback callback) {
|
||||
mContext = context;
|
||||
mDbxClient = dbxClient;
|
||||
mCallback = callback;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onPostExecute(FileMetadata result) {
|
||||
super.onPostExecute(result);
|
||||
if (mException != null) {
|
||||
mCallback.onError(mException);
|
||||
} else if (result == null) {
|
||||
mCallback.onError(null);
|
||||
} else {
|
||||
mCallback.onUploadComplete(result);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected FileMetadata doInBackground(String... params) {
|
||||
String localUri = params[0];
|
||||
File localFile = UriHelpers.getFileForUri(mContext, Uri.parse(localUri));
|
||||
|
||||
if (localFile != null) {
|
||||
String remoteFolderPath = params[1];
|
||||
|
||||
// Note - this is not ensuring the name is a valid dropbox file name
|
||||
String remoteFileName = localFile.getName();
|
||||
|
||||
try (InputStream inputStream = new FileInputStream(localFile)) {
|
||||
return mDbxClient.files().uploadBuilder(remoteFolderPath + "/" + remoteFileName)
|
||||
.withMode(WriteMode.OVERWRITE)
|
||||
.uploadAndFinish(inputStream);
|
||||
} catch (DbxException | IOException e) {
|
||||
mException = e;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -1,119 +0,0 @@
|
|||
package info.nightscout.androidaps.plugins.general.maintenance.dropbox;
|
||||
|
||||
import android.content.ContentUris;
|
||||
import android.content.Context;
|
||||
import android.database.Cursor;
|
||||
import android.net.Uri;
|
||||
import android.os.Environment;
|
||||
import android.provider.DocumentsContract;
|
||||
import android.provider.MediaStore;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public class UriHelpers {
|
||||
|
||||
private UriHelpers() {}
|
||||
|
||||
/**
|
||||
* Get the file path for a uri. This is a convoluted way to get the path for an Uri created using the
|
||||
* StorageAccessFramework. This in no way is the official way to do this but there does not seem to be a better
|
||||
* way to do this at this point. It is taken from https://github.com/iPaulPro/aFileChooser.
|
||||
*
|
||||
* @param context The context of the application
|
||||
* @param uri The uri of the saved file
|
||||
* @return The file with path pointing to the saved file. It can return null if we can't resolve the uri properly.
|
||||
*/
|
||||
public static File getFileForUri(final Context context, final Uri uri) {
|
||||
String path = null;
|
||||
// DocumentProvider
|
||||
if (DocumentsContract.isDocumentUri(context, uri)) {
|
||||
// ExternalStorageProvider
|
||||
if (isExternalStorageDocument(uri)) {
|
||||
final String docId = DocumentsContract.getDocumentId(uri);
|
||||
final String[] split = docId.split(":");
|
||||
final String type = split[0];
|
||||
|
||||
if ("primary".equalsIgnoreCase(type)) {
|
||||
path = Environment.getExternalStorageDirectory() + "/" + split[1];
|
||||
}
|
||||
} else if (isDownloadsDocument(uri)) {
|
||||
// DownloadsProvider
|
||||
final String id = DocumentsContract.getDocumentId(uri);
|
||||
final Uri contentUri = ContentUris
|
||||
.withAppendedId(Uri.parse("content://downloads/public_downloads"), Long.valueOf(id));
|
||||
|
||||
path = getDataColumn(context, contentUri, null, null);
|
||||
} else if (isMediaDocument(uri)) {
|
||||
// MediaProvider
|
||||
final String docId = DocumentsContract.getDocumentId(uri);
|
||||
final String[] split = docId.split(":");
|
||||
final String type = split[0];
|
||||
|
||||
Uri contentUri = null;
|
||||
if ("image".equals(type)) {
|
||||
contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
|
||||
} else if ("video".equals(type)) {
|
||||
contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
|
||||
} else if ("audio".equals(type)) {
|
||||
contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
|
||||
}
|
||||
|
||||
final String selection = "_id=?";
|
||||
final String[] selectionArgs = new String[] {
|
||||
split[1]
|
||||
};
|
||||
|
||||
path = getDataColumn(context, contentUri, selection, selectionArgs);
|
||||
}
|
||||
} else if ("content".equalsIgnoreCase(uri.getScheme())) {
|
||||
// MediaStore (and general)
|
||||
path = getDataColumn(context, uri, null, null);
|
||||
} else if ("file".equalsIgnoreCase(uri.getScheme())) {
|
||||
// File
|
||||
path = uri.getPath();
|
||||
}
|
||||
|
||||
if (path != null) {
|
||||
return new File(path);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private static String getDataColumn(Context context, Uri uri, String selection,
|
||||
String[] selectionArgs) {
|
||||
|
||||
Cursor cursor = null;
|
||||
final String column = "_data";
|
||||
final String[] projection = {
|
||||
column
|
||||
};
|
||||
|
||||
try {
|
||||
cursor = context.getContentResolver().query(uri, projection, selection, selectionArgs,
|
||||
null);
|
||||
if (cursor != null && cursor.moveToFirst()) {
|
||||
final int column_index = cursor.getColumnIndexOrThrow(column);
|
||||
return cursor.getString(column_index);
|
||||
}
|
||||
} finally {
|
||||
if (cursor != null) {
|
||||
cursor.close();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
private static boolean isExternalStorageDocument(Uri uri) {
|
||||
return "com.android.externalstorage.documents".equals(uri.getAuthority());
|
||||
}
|
||||
|
||||
private static boolean isDownloadsDocument(Uri uri) {
|
||||
return "com.android.providers.downloads.documents".equals(uri.getAuthority());
|
||||
}
|
||||
|
||||
private static boolean isMediaDocument(Uri uri) {
|
||||
return "com.android.providers.media.documents".equals(uri.getAuthority());
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in a new issue