여기에 뭔가가 있습니까? 내 코드는이 코드를 기반으로 Dropbox에 업로드 할 NullPointerException을 실행 중입니다.Android - Dropbox에 업로드
File file = new File(mFileMag.getCurrentDir() +"/"+ mSelectedListItem);
System.out.println(file);
inputStream = new FileInputStream(file);
System.out.println(inputStream);
Entry newEntry = mDBApi.putFile("/" + mSelectedListItem, inputStream,
file.length(), null, null);
System.out.println(newEntry);
system.out 명령의 결과는 ok입니다. inputStream 변수는 "[email protected]"을 출력하지만 약간 혼란 스럽지만 file 변수의 systemout은 올바른 경로와 파일 이름을 표시합니다. nullPointerException 내게 제로 의미가 newEntry 변수의 설정에서 오는 것 같다. Eclipse는 코드를 구문 적으로 올바른 것으로 보여줍니다. 이 보관 용 쓰레기가 나를 죽이고있다.
@BenHolland -
case D_MENU_SEND:
// Uploading content.
FileInputStream inputStream = null;
try {
//File file = new File(mFileMag.getCurrentDir() +"/"+ mSelectedListItem);
File file = new File("/sdcard0/DCIM/100ANDRO/deploy.json");
System.out.println(file);
inputStream = new FileInputStream(file);
System.out.println(inputStream);
Entry newEntry = mDBApi.putFile("/Dropbox/", inputStream,
file.length(), null, null);
System.out.println(newEntry);
Log.i("DbExampleLog", "The uploaded file's rev is: " + newEntry.rev);
} catch (DropboxUnlinkedException e) {
// User has unlinked, ask them to link again here.
Log.e("DbExampleLog", "User has unlinked.");
} catch (DropboxException e) {
Log.e("DbExampleLog", "Something went wrong while uploading.");
} catch (FileNotFoundException e) {
Log.e("DbExampleLog", "File not found.");
} finally {
if (inputStream != null) {
try {
inputStream.close();
} catch (IOException e) {}
}
}
이 단순히 물론 캐치 (FileNotFoundException이)에서 오는 로그 캣에서 "파일을 찾을 수 없습니다"생성 - 나는 아래 경로를 하드 코드합니다. 그러나 NullPointerException을 수신하지 않습니다. 코드 맨 위 (case 문)에서 컨텍스트 메뉴를 클릭하면이 코드가 실행됩니다.
는 _____________________________________Updated는
// Uploading content.
FileInputStream inputStream = null;
File upfile = new File(mFileMag.getCurrentDir() + "/" + mSelectedListItem);
try {
inputStream = new FileInputStream(upfile);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
System.out.println(upfile);
System.out.println(inputStream);
try {
Entry upEntry = mDBApi.putFile("/test.rar", inputStream,upfile.length(), null, null);
System.out.println(upEntry);
} catch (DropboxException e) {
e.printStackTrace();
}
그래서 나는이에 코드를 업데이트했습니다 code__________________________________________. 내가 패스를 하드 코딩했는지 여부는 관련성이없는 것 같습니다. 경우에도, 항목 upEntry 줄 NullPointerException 일으키는 것입니다. 나는 잃어 버렸다. 나는 이것을 일으킬만한 것을 전혀 볼 수 없다.
는 "보관 용으로 보내기"nullPointerException_______________________
02-14 13:28:07.370: W/dalvikvm(311): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
02-14 13:28:07.380: E/AndroidRuntime(311): FATAL EXCEPTION: main
02-14 13:28:07.380: E/AndroidRuntime(311): java.lang.NullPointerException
02-14 13:28:07.380: E/AndroidRuntime(311): at com.stavox.zircon.Main.onContextItemSelected(Main.java:722)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.app.Activity.onMenuItemSelected(Activity.java:2199)
02-14 13:28:07.380: E/AndroidRuntime(311): at com.android.internal.policy.impl.PhoneWindow$ContextMenuCallback.onMenuItemSelected(PhoneWindow.java:2744)
02-14 13:28:07.380: E/AndroidRuntime(311): at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:143)
02-14 13:28:07.380: E/AndroidRuntime(311): at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:855)
02-14 13:28:07.380: E/AndroidRuntime(311): at com.android.internal.view.menu.MenuDialogHelper.onClick(MenuDialogHelper.java:137)
02-14 13:28:07.380: E/AndroidRuntime(311): at com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertController.java:874)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.widget.AdapterView.performItemClick(AdapterView.java:284)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.widget.ListView.performItemClick(ListView.java:3382)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.widget.AbsListView$PerformClick.run(AbsListView.java:1696)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.os.Handler.handleCallback(Handler.java:587)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.os.Handler.dispatchMessage(Handler.java:92)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.os.Looper.loop(Looper.java:123)
02-14 13:28:07.380: E/AndroidRuntime(311): at android.app.ActivityThread.main(ActivityThread.java:4627)
02-14 13:28:07.380: E/AndroidRuntime(311): at java.lang.reflect.Method.invokeNative(Native Method)
02-14 13:28:07.380: E/AndroidRuntime(311): at java.lang.reflect.Method.invoke(Method.java:521)
02-14 13:28:07.380: E/AndroidRuntime(311): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
02-14 13:28:07.380: E/AndroidRuntime(311): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
02-14 13:28:07.380: E/AndroidRuntime(311): at dalvik.system.NativeStart.main(Native Method)
내가 클릭 할 때 발생하는 스택 추적이 있습니다에서 추적 ________________________________Stack. 나는 전체 과정을 무너 뜨리면 누군가가 도와주기가 더 쉬워 질 것이라고 생각합니다.
- 앱은 목록보기로 시작 - 그것의 파일 관리자 응용 프로그램 - main.java 사용자는 보관 용 승인을 시작 메뉴의 버튼 클릭
- - 버튼로드 DropboxfileuploadActivity.java - 그게 정식을 이것이 완료되면 (자), main.java에 돌려 주어집니다.
- 사용자가 업로드하려는 파일을 탐색합니다.
- 사용자가 해당 파일을 오래 클릭하면 컨텍스트 메뉴가 표시됩니다.이 파일은 Main.java에서도 처리됩니다.
컨텍스트 메뉴에는 "보낼 편지함으로 보내기"항목이 있습니다. 클릭하면 여기에서 살펴본 코드가 들어있는 case 문을 가리 킵니다. 그게 NullPointerException을 생성하고 있습니다. 위 라인 722에서 볼 수 있듯이 잘못된 라인이 있습니다.
은 이전에 내가 두 파일 사이에 일하는 : 그 라인은
그래서 여기에 내가이 문제를 해결하는 일을 결국 무엇 년대
Entry upEntry = mDBApi.putFile("/test.rar", inputStream,upfile.length(), null, null);
_____________________________________________Solution_______________________________________입니다. 나는 Dropboxfileuploadactivity.java에서 Main.java의 Dropbox authcode와 실제 업로드 코드를 가지고있다. 아무리 노력해도 업로드가 이런 방식으로 작동하지 못했습니다. 나는 매번 NullPointerException을 받았다.나는 처음에 변수에 비난하고 Dropbox 메소드를 사용하지 못하게했다. 그것을 알아 내려고 노력한 끝에 결국 인증 코드와 업로드 코드를 함께 Main.java로 옮기는 것이 내 문제를 해결했다. 더 이상 NullPointerExceptions가 없습니다. 이상하지만 작동했습니다. 변수가 잘 작동합니다.
스택 추적 등을 인쇄 할 수 있습니까? 당신은 야생 추측을 제외하고, 누군가 당신을 돕기에 충분한 정보를 제공하지 않았습니다. –
하드 코딩 된 파일로이 작업을 수행 할 수 있습니까? 다음은 예입니다. -> https://www.dropbox.com/static/developers/dropbox-android-sdk-1.5.3-docs/index.html –
@BenHolland - 추가 정보와 코드를 하단에 추가했습니다. 원래 게시물. –