ファイルをzipファイルにバックアップし、GoogleドライブAndroid API(GDAA)を使用してGoogleドライブにアップロードしようとしています。アップロードのためにCompletionEventを受け取るべき部分まで、すべてうまくいっています。 これは私がこれまでに...GoogleドライブAndroid APIのOnCompletionEventをアップロードできません
が、私はこのようDriveContentsを作成したものです:私は私がアップロードしたいファイルのzipファイルを作成するために、入力/出力ストリームを使用
Drive.DriveApi.newDriveContents(mGAPIClient)
.setResultCallback...
。
ExecutionOptions executionOptions = new ExecutionOptions.Builder()
.setNotifyOnCompletion(true)
.build();
その後、私はGoogleドライブのAppFolder内のファイルこの方法(DriveContentsと作成ExecutionOptionsを使用して)作成します:
をそれから私はExecutionOptionsは、アップロードの完了が通知されるように求めてオブジェクトを作成しますDrive.DriveApi.getAppFolder(mGAPIClient).createFile(mGAPIClient, metadataChangeSet, mDContents, executionOptions)
.setResultCallback...
これは私のDriveEventServiceサブクラスである、それはCompletionEventを受信するための責任を負わなければならない:
public class MeuDriveEventService extends DriveEventService {
@Override
public void onCompletion(CompletionEvent completionEvent) {
super.onCompletion(completionEvent);
Log.d("GAPI", "status do com.example.android.QsApp.MeuDriveEventService: " + completionEvent.getStatus());
completionEvent.dismiss();
}
}
...そして、それは私のマニフェストで宣言されています。
<service
android:name="com.example.android.QsApp.MeuDriveEventService"
android:exported="true">
<intent-filter>
<action android:name="com.google.android.gms.drive.events.HANDLE_EVENT"/>
</intent-filter>
</service>
zipファイルがとが正常にアップロード(私は複数回チェックされる)、ローカルに作成されてで、私はしないでくださいCompletionEventを取得します。私はマニフェストや何かの許可を失っていますか?私はここで何を見落としていますか?
logcatエラーがありますか? AppDataフォルダは調べにくい。ファイルがドライブのホストに伝播していることをどのように知っていますか? – Cheticamp
エラーはまったくありません。 私は次のことができます: AppDataフォルダ内の「隠しデータを削除」(drive.google.com>設定>アプリケーションの管理)でコードを実行し、AppDataフォルダのサイズを確認しますそのサイズを私のデバイスの生成されたzipファイルと比較するか、または 2 - AppDataフォルダ内のファイルをプログラムで(デバイスに)ダウンロードし、そのzipファイルを見ます(後で行います)。 私は何かが分かりにくいと思った(私は初心者です)。 –
それは私がチェックする方法です。この問題([MCVE](https://stackoverflow.com/help/mcve))を示す小さなアプリをまとめることができれば、私はもっと詳しく見ていきたいと思います。投稿したコードはOKです。 – Cheticamp