2016-06-27 8 views
1

を使用してファイルを見つけることができません。GoogleドライブのAndroid API:私はGoogleのAPIに接続する私のアプリでは、クエリ

Query query = new Query.Builder() 
    .addFilter(Filters.eq(SearchableField.TITLE, "buffer.txt")) 
    .build(); 
Drive.DriveApi.query(mGoogleApiClient, query).setResultCallback(mFindFileCallback); 

とIn:

mGoogleApiClient = new GoogleApiClient.Builder(this) 
    .addApi(Drive.API) 
    .addScope(Drive.SCOPE_FILE) 
    .addScope(Drive.SCOPE_APPFOLDER) 
    .addConnectionCallbacks(mGDriveCallback) 
    .addOnConnectionFailedListener(mGDriveCallback) 
    .build(); 
mGoogleApiClient.connect(); 

その後mGDriveCallbackonConnected機能で、私は、クエリ要求を行いますonResultmFindFileCallback結果を確認します:

if (!result.getStatus().isSuccess()) { 
    Log.w(TAG, "Problem while retrieving files"); 
} else { 
    Log.i(TAG, "Results size: " + result.getMetadataBuffer().getCount()); 
    if (result.getMetadataBuffer().getCount() > 0) { 
     Metadata md = result.getMetadataBuffer().get(0); 
     Log.i(TAG, "DriveId: " + md.getDriveId()); 
    } else { 
     Log.w(TAG, "File not found"); 
    } 
} 

私は個人的に私のドライブに "buffer.txt"をアップロードしていますが、私は空の結果のメタファーを受け取ります。したがって、コードは「ファイルが見つかりません」という警告を表示します。同じことが、フォルダを見つけようとしている場合にも起こります。 Filters.eqFilters.containsに置き換えようとしましたが、成功しませんでした。

私は何か間違って何をしていますか?

+0

あなたが明示的に「buffer.txt」にタイトルを設定している:ここで

はSO関連のチケットですか? – Anatoli

+0

ファイルをアップロードしましたが、名前を変更しようとしましたが、成功しませんでした。私はフォルダを作成しました - どちらも取得できません。 – alex

+0

ファイルはあなたのアプリケーションによってドライブにアップロードされましたか? 他の方法でファイルをアップロードしましたか(ドライブウェブインターフェース、ドライブアンドロイドアプリなど)? – Anatoli

答えて

0

File not foundが発生したときのOfficial Google Documentationに基づいて、エラーは、ユーザーがファイルへの読み取りアクセス権を持っていないか、ファイルが存在しないことを意味します。

{ 
"error": { 
"errors": [ 
{ 
"domain": "global", 
"reason": "notFound", 
"message": "File not found {fileId}" 
} 
], 
"code": 404, 
"message": "File not found: {fileId}" 
} 
} 

アクション推奨:彼らは、ファイルへのアクセスを読んだり、ファイルが存在しないことを持っていないことをユーザーにレポート。所有者にファイルの許可を求めるべきだと伝えてください。

注:GETファイルメタデータを要求するときは、正しいaccess_tokenを指定してください。あなたがファイルを作成したら、Drive API for Android unable to access the file created by same App

+0

私はアンドロイドに全く新しいです。私は「ファイルが見つかりません」と私のエラーで接続が分かっているとは分かりません。基本的に、私がやろうとしているのは、その名前に基づいてファイルのDriveIdを取得することです。このファイルは自分で作成したもので、自分のGoogleアカウントを使ってアプリからアクセスします。ただし、クエリではファイルが見つかりません。私のアプリケーションからは、認証がエラーを返さなかったにもかかわらず私自身のGdriveファイルにアクセスできないことをお勧めしますか? – alex

関連する問題