2017-02-16 17 views
0

Я не понимаю, как я получаю исключение из null-указателя. Я hacve загрузил zip-файл в Dropbox. Но когда я пытаюсь загрузить его из dropbox, он дает ошибку. я использовал код ниже:Я получаю исключение null-указателя, когда пытаюсь загрузить файл из dropbox

public class DownloadZip extends AsyncTask { 
private DropboxAPI<AndroidAuthSession> mDBApi; 
@Override 
protected Object doInBackground(Object[] params) { 

    File sdCardDir = new File(Environment.getExternalStorageDirectory() + "/DoDoDo"); 
    if (!sdCardDir.exists()){ 
     sdCardDir.mkdir(); 
    } 
    File file=new File(sdCardDir.getPath()+"/DatabaseZip.zip"); 
    FileOutputStream outputStream = null; 

    try { 
     outputStream = new FileOutputStream(file); 
    } catch (FileNotFoundException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

    DropboxAPI.DropboxFileInfo info; 
    try { 
     info= mDBApi.getFile("/DatabaseZip.zip", null, outputStream, null);//Getting exception here 
     //Log.i("DbExampleLog", "The file's rev is: " 
     //  + info.getMetadata().rev); 
    } catch (DropboxException e) { 
     // TODO Auto-generated catch block 

     e.printStackTrace(); 
    } 
    return null; 
} 

}

Я вызываю функцию отсюда:

private View.OnClickListener clickHandler = new View.OnClickListener() { 

    @Override 
    public void onClick(View v) { 
    case R.id.importFromDropBtn: 
       Log.d("import", "working"); 

       new DownloadZip().execute(); 
+0

Доля ваш журнал кошки сообщение здесь – Piyush

+2

Похоже, вы никогда не инициализировать mBDApi и поэтому является недействительным и вы не можете вызвать метод его –

+0

поделиться журнала кошки – user3040153

ответ

0
// And later in some initialization function: 
AppKeyPair appKeys = new AppKeyPair(APP_KEY, APP_SECRET); 
AndroidAuthSession session = new AndroidAuthSession(appKeys); 
mDBApi = new DropboxAPI<AndroidAuthSession>(session); 

Используйте эти строки, чтобы инициализировать объект mDBApi перед его использованием в line

info= mDBApi.getFile("/DatabaseZip.zip", null, outputStream, null);//Getting exception here 

Заменить APP_KEY, APP_SECRET эти строки с учетными данными

+0

Спасибо ...... Теперь я не получаю исключения. Тем не менее, я не смог загрузить zip-файл из Dropbox ... – AndroidNwB

+0

мой лог-код говорит так: W/System.err: com.dropbox.client2.exception.DropboxUnlinkedException W/System.err: at com.dropbox. client2.DropboxAPI.assertAuthenticated (DropboxAPI.java:2717) W/System.err: at com.dropbox.client2.DropboxAPI.getFileStream (DropboxAPI.java:1533) W/System.err: at com.dropbox.client2. DropboxAPI.getFile (DropboxAPI.java:1497) W/System.err: at com.example.anilcs.dodo.DownloadZip.doInBackground (DownloadZip.java:44) W/System.err: at android.os.AsyncTask $ 2 .call (AsyncTask.java:295) – AndroidNwB

+0

Вставьте свой вывод logcat –