我正在開發一個android應用程序。它可以在我的筆記本電腦上正常工作,但是如果我在其他筆記本電腦或Android設備上使用相同的源代碼,它不會加載某些東西(例如鏈接到遠程SQL數據庫的列表)。它使用完全相同的代碼和軟件版本在我的筆記本電腦上正常加載。Android應用程序不能在另一臺筆記本電腦上工作
這可能是什麼原因造成的?
這是我現在得到的錯誤:
03-21 23:42:20.174: W/dalvikvm(1037): threadid=1: thread exiting with uncaught exception (group=0x40014760)
03-21 23:42:20.183: E/AndroidRuntime(1037): FATAL EXCEPTION: main
03-21 23:42:20.183: E/AndroidRuntime(1037): java.lang.NullPointerException
03-21 23:42:20.183: E/AndroidRuntime(1037): at android.widget.PopupWindow.showAtLocation(PopupWindow.java:791)
03-21 23:42:20.183: E/AndroidRuntime(1037): at com.fokrul.justdeals.ActivityTab$2.onItemLongClick(ActivityTab.java:298)
和我行298如下:
lvBooks.setOnItemLongClickListener(new OnItemLongClickListener(){
public boolean onItemLongClick(AdapterView<?> arg0, View view, final int position, long arg3) {
LayoutInflater inflater = (LayoutInflater)ActivityTab.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View viewInflated = inflater.inflate(R.layout.popupfile, null, false);
popup = new PopupWindow(viewInflated, Resizable.getDrawableWidth(getResources(), R.drawable.popup_menu), Resizable.getDrawableHeight(getResources(), R.drawable.popup_menu), true);
popup.setAnimationStyle(R.style.animation_popup);
View lvBooks = null;
<THIS IS LINE 298>>>>> popup.showAtLocation(lvBooks, Gravity.NO_GRAVITY, view.getWidth()/2-Resizable.getDrawableWidth(getResources(), R.drawable.popup_menu)/2, view.getTop()+view.getHeight()/2);
setPopupListeners(viewInflated, position, bid);
return false;
}
});
檢查您的logcat - 最有可能的是,您無權訪問遠程數據庫。 – 323go 2013-03-21 23:08:56
我認爲您正在使用Eclipse進行開發。看看LogCat - 聽起來你的筆記本電腦與SQL數據庫的連接有問題,所以很可能你會看到LogCat中拋出的異常。 – Darwind 2013-03-21 23:09:07
logcat中沒有錯誤,連接參數都沒有問題。在我的筆記本電腦上,相同的連接參數和代碼如何工作完美無瑕? 〜它在不同的筆記本電腦上訪問相同的分貝。而我的遠程數據庫是通過PHP API訪問的Android設備訪問。它可以是一個錯誤與PHP? – 2013-03-21 23:12:35