


版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.23.在使用AndroidHttpClient時(shí)有如下錯(cuò)誤:01-16 22:18:39.222: E/AndroidHttpClient(26745): java.lang.IllegalStateException: AndroidHttpClient created and never closed這個(gè)主要是因?yàn)闆](méi)有調(diào)用AndroidHttpClient的close()方法。它的close()方法如下:12345678910/*Releaseresourcesassociatedwiththisclient.Youmustcallthis,*orsignificantresources
2、(socketsandmemory)maybeleaked.*/publicvoidclose()if(mLeakedException!=null)getConnectionManager().shutdown();mLeakedException=null;在我們的使用中在finally語(yǔ)句塊中調(diào)用其close方法即可。12345finallyif(httpClient!=null)httpClient.close();最后更新:2012111223,在使用一個(gè)FrameLayout作為容器時(shí),將一個(gè)Frament實(shí)例動(dòng)態(tài)添加進(jìn)布局時(shí),出現(xiàn)如下錯(cuò)誤提示:The specified chil
3、d already has a parent. You must call removeView() on the childs parent first.解決辦法就是:在12345678OverridepublicViewonCreateView(LayoutInflaterinflater,ViewGroupcontainer,BundlesavedInstanceState)Log.i(DIALOG_FRAGMENT,=(3)onCreateView=);Viewview=inflater.inflate(R.layout.auth,container,false);initViews(
4、view);returnview;中,使用,注意帶參數(shù)falseView view = inflater.inflate(R.layout.auth, container, false);22.android:filterTouchesWhenObscuredview所在窗口被其它可見(jiàn)窗口遮住時(shí),是否過(guò)濾觸摸事件。結(jié)果因?yàn)橛行?yīng)用會(huì)在界面的上面加一層,導(dǎo)致軟件不可滑動(dòng)。所以。最后更新 2012-04-2821.接下面的錯(cuò)誤:1234567891011121314151617181920212205-1016:16:23.830:W/dalvikvm(15086):threadid=1:thre
5、adexitingwithuncaughtexception(group=0x40a4b1f8)05-1016:16:23.860:E/AndroidRuntime(15086):FATALEXCEPTION:main05-1016:16:23.860:E/AndroidRuntime(15086):java.lang.IllegalStateException:Activityhasbeendestroyed05-1016:16:23.860:E/AndroidRuntime(15086): atandroid.support.v4.app.FragmentManagerImpl.enque
6、ueAction(FragmentManager.java:1314)05-1016:16:23.860:E/AndroidRuntime(15086): atandroid.support.v4.app.BackStackRecord.mitInternal(BackStackRecord.java:541)05-1016:16:23.860:E/AndroidRuntime(15086): atandroid.support.v4.app.BackStackRecord.mitAllowingStateLoss(BackStackRecord.java:529)05-1016:16:23.
7、860:E/AndroidRuntime(15086): at.ditouch.client.activity.BaseFragmentActivity.removeFragmentDialog(BaseFragmentActivity.java:129)05-1016:16:23.860:E/AndroidRuntime(15086): at.ditouch.client.activity.BaseFragmentActivity.removeFragmentDialog(BaseFragmentActivity.java:114)05-1016:16:23.860:E/AndroidRun
8、time(15086): at.ditouch.client.guilin.DiTouchClientActivity.access$1(DiTouchClientActivity.java:1)05-1016:16:23.860:E/AndroidRuntime(15086): at.ditouch.client.guilin.DiTouchClientActivity$ConnectServerTask.onPostExecute(DiTouchClientActivity.java:299)05-1016:16:23.860:E/AndroidRuntime(15086): at.dit
9、ouch.client.guilin.DiTouchClientActivity$ConnectServerTask.onPostExecute(DiTouchClientActivity.java:1)05-1016:16:23.860:E/AndroidRuntime(15086): atandroid.os.AsyncTask.finish(AsyncTask.java:602)05-1016:16:23.860:E/AndroidRuntime(15086): atandroid.os.AsyncTask.access$600(AsyncTask.java:156)05-1016:16
10、:23.860:E/AndroidRuntime(15086): atandroid.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:615)05-1016:16:23.860:E/AndroidRuntime(15086): atandroid.os.Handler.dispatchMessage(Handler.java:99)05-1016:16:23.860:E/AndroidRuntime(15086): atandroid.os.Looper.loop(Looper.java:137)05-1016:16:23.8
11、60:E/AndroidRuntime(15086): atandroid.app.ActivityThread.main(ActivityThread.java:4424)05-1016:16:23.860:E/AndroidRuntime(15086): atjava.lang.reflect.Method.invokeNative(NativeMethod)05-1016:16:23.860:E/AndroidRuntime(15086): atjava.lang.reflect.Method.invoke(Method.java:511)05-1016:16:23.860:E/Andr
12、oidRuntime(15086): ernal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)05-1016:16:23.860:E/AndroidRuntime(15086): ernal.os.ZygoteInit.main(ZygoteInit.java:551)05-1016:16:23.860:E/AndroidRuntime(15086): atdalvik.system.NativeStart.main(NativeMethod)在此有說(shuō)是因?yàn)镕ragm
13、entManager自己是在onCreate中初始化的所以要把fragment的操作放到后面去:stackoverflow./questions/6938368/why-do-i-get-illegalstateexceptions-every-time-i-start-an-activity-that-uses-sup20. 在debug帶有android.support.v4的包時(shí),結(jié)果出現(xiàn)下面的錯(cuò)誤:05-10 15:47:09.850: E/AndroidRuntime(12744): java.lang.IllegalStateException: Can not perform t
14、his action after onSaveInstanceState比較完整的stack如下:1234567805-1015:47:06.470:W/dalvikvm(12744):threadid=1:threadexitingwithuncaughtexception(group=0x40a4b1f8)05-1015:47:09.850:E/AndroidRuntime(12744):FATALEXCEPTION:main05-1015:47:09.850:E/AndroidRuntime(12744):java.lang.IllegalStateException:Cannotper
15、formthisactionafteronSaveInstanceState05-1015:47:09.850:E/AndroidRuntime(12744): atandroid.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1299)05-1015:47:09.850:E/AndroidRuntime(12744): atandroid.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1310)05-10
16、15:47:09.850:E/AndroidRuntime(12744): atandroid.support.v4.app.BackStackRecord.mitInternal(BackStackRecord.java:541)05-1015:47:09.850:E/AndroidRuntime(12744): atandroid.support.v4.app.BackStackRecord.mit(BackStackRecord.java:525)05-1015:47:09.850:E/AndroidRuntime(12744): atandroid.support.v4.app.Dia
17、logFragment.show(DialogFragment.java:123)在此處有人也一個(gè)有點(diǎn)類(lèi)似問(wèn)題:stackoverflow./questions/7575921/illegalstateexception-can-not-perform-this-action-after-onsaveinstancestate-h我看到上面有提到onSaveInstanceState(),于是就重寫(xiě)了下這個(gè).像上面說(shuō)的不能調(diào)用super.我調(diào)用了,而且居然就tmd沒(méi)有錯(cuò)誤提示了.19.05-10 16:08:43.190: E/AndroidRuntime(14243): java.lang.
18、IllegalStateException: addToBackStack() called after mit()18.在使用android.support.v7.widget.GridLayout時(shí)出錯(cuò):參考:stackoverflow./questions/10133078/assistance-please-setting-up-android-support-package-v7-for-eclipse-gridlayou其中有兩個(gè)重要的特點(diǎn):1.要將android-support-v7作為一個(gè)庫(kù)引用項(xiàng)目.然后使用全名.然后,還是要將android-support-v7作為一個(gè)庫(kù)項(xiàng)目
19、,來(lái)處理,命名空間等待.17. android.database.sqlite.SQLiteException: unable to close due to unfinalised statements這個(gè)我自己的是在一個(gè)網(wǎng)絡(luò)出現(xiàn)異常,所以沒(méi)有按順序執(zhí)行close(),解決辦法是添加finally語(yǔ)句并執(zhí)行close()語(yǔ)句.(2012-04-23)16.04-23 14:50:08.344: E/AndroidRuntime(28034): Caused by: java.lang.IllegalStateException: Fragment .ditouch.client.activi
20、ty.EditMenuxFragment did not create a view.在使用Fragment中出現(xiàn)上面的錯(cuò)誤,我是照著Google Android的文檔來(lái)做的.錯(cuò)誤的原因是我將FrameLayout看成了fragment想當(dāng)然了.15.android.util.AndroidRuntimeException: requestFeature() must be called before adding content在為AlertDialog中使用自定義布局時(shí),在Builder中調(diào)用了create()后不小心在使用了setContentView()事實(shí)上也不應(yīng)該在使用setCon
21、entView了.因?yàn)槿绻仍O(shè)置了這個(gè)會(huì)與后面添加產(chǎn)生沖突.14.android.view.WindowManager$BadTokenException: Unable to add window - token null is not for an application原來(lái)及解決辦法:導(dǎo)致報(bào)這個(gè)錯(cuò)是在于new AlertDialog.Builder(mcontext),雖然這里的參數(shù)是AlertDialog.Builder(Context context)但我們不能使用getApplicationContext()獲得的Context,而必須使用Activity,因?yàn)橹挥幸粋€(gè)Activi
22、ty才能添加一個(gè)窗體。Thanks to :13. 在使用AlertDialog中,使用了如下代碼.1234returnnewAlertDialog.Builder(this).setTitle(提醒!).setMessage(args.getString(MESSAGE).setCancelable(false)但是,實(shí)際使用我發(fā)現(xiàn),如果我是在Activity中托管使用這個(gè)的話,在整個(gè)Acitivty生命周期中只創(chuàng)建一次,所以,args.getString()就只能得到第一次得到內(nèi)容.解決辦法是使用onPrepareDialog(),現(xiàn)在知道為什么要這樣子設(shè)計(jì)了.12345678910111
23、213OverrideprotectedvoidonPrepareDialog(intid,Dialogdialog,Bundleargs)AlertDialogaDialog=(AlertDialog)dialog;switch(id)caseDIALOG_FIRE_ALL_ORDER:aDialog.setMessage(args.getCharSequence(MESSAGE);break;caseDIALOG_DELETE_ORDER_NON_FIRED:aDialog.setMessage(args.getString(DISH_NAME);default:break;12.在Lis
24、tView的適配器中出現(xiàn):java.lang.IndexOutOfBoundsException: Invalid index 32, size is 23原因是我在getView()中使用了.mCheckBoxList.add(position, holder.check);解決辦法是,使用:mCheckBoxList.add(mCheckBoxList.size(), holder.check);11.NetworkOnMainThreadException當(dāng)我把targetSdkVersion設(shè)置為11時(shí),我原來(lái)在UI線程執(zhí)行網(wǎng)絡(luò)操作的代碼就會(huì)出現(xiàn)上面的異常,解決辦法是使用AsyncTa
25、sk來(lái)網(wǎng)絡(luò)操作.或者使用其他的網(wǎng)絡(luò)庫(kù)如Volley,10.close() was never explicitly called on database04-12 17:19:34.020: E/SQLiteDatabase(2743): close() was never explicitly called on database /data/data/*.db這個(gè)在我使用完SQLiteOpenHelper的子類(lèi)對(duì)象之后調(diào)用close()方法沒(méi)有報(bào)這個(gè)錯(cuò)了. Thanks to :stackoverflow./questions/4464892/android-error-close-was
26、-never-explicitly-called-on-database9.在使用SQLiteOpenHelper時(shí)出現(xiàn)這樣一個(gè)錯(cuò)誤:Cant upgrade read-only database from version 0 to 104-12 16:59:11.230: E/AndroidRuntime(2119): android.database.sqlite.SQLiteException: Cant upgrade read-only database from version 0 to 1: /data/data/databases/*.db從輸出的log中我發(fā)現(xiàn)現(xiàn)在這個(gè)錯(cuò)誤的時(shí)
27、候,同時(shí)前面會(huì)有一個(gè)sql語(yǔ)法錯(cuò)誤.解決辦法是根據(jù)提示,仔細(xì)檢查sql語(yǔ)句看是否有錯(cuò)誤.8.在UI線程中開(kāi)了一個(gè)線程來(lái)初始化一個(gè)ViewFlipper.導(dǎo)致下面的錯(cuò)誤 :04-10 14:08:36.356: E/AndroidRuntime(26716): android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.解決辦法使用post方法將操作post過(guò)去 :12345678910111
28、2131415ToastUtils.showLong(this,正在加載樓層數(shù)據(jù).);newThread(newRunnable()Overridepublicvoidrun()for(StringfloorId:FLOOR_NUMS)finalListtables=TableDao.findByFloorId(floorId);mFloorFlipper.post(newRunnable()Overridepublicvoidrun()buildFloorView(tables););).start();7.在使用LayoutInflater.inflate()時(shí)經(jīng)常被第地個(gè)參數(shù)給搞定了.我
29、是在適配器上使用的:123publicViewgetView(intposition,ViewconvertView,ViewGroupparent)if(convertView!=null)returnconvertView;Viewview=mInflater.inflate(R.layout.menu_item,parent);錯(cuò)誤信息如下:04-02 02:49:06.322: E/AndroidRuntime(494): java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not suppor
30、ted in AdapterView應(yīng)該改成下面這樣 :mInflater.inflate(R.layout.menu_item,parent,false);因?yàn)槲覀冃枰褂胮arent來(lái)幫助構(gòu)造LayoutParams,但不是要添加進(jìn)parent6.在使用SharedPreferences的時(shí)候,使用了getPreferences().但是這個(gè)是只供本Acitivity使用的.如果在本應(yīng)用的其它activity中共享這些設(shè)置,就要使用getSharedPreferences();5.第四個(gè)錯(cuò)誤說(shuō)到,要在每一個(gè)ListView中的項(xiàng)中實(shí)現(xiàn),手勢(shì)滑動(dòng)判斷,刪除功能.但是如果沒(méi)有設(shè)置背景圖片或者背
31、景色的時(shí)候,當(dāng)手滑動(dòng)區(qū)域超過(guò)一個(gè)ListView的項(xiàng)時(shí),就會(huì)出現(xiàn)ListView項(xiàng)背景反色,很是讓人討厭,一開(kāi)始我以為是因?yàn)?ListView項(xiàng),獲得了焦點(diǎn)的原因,就嘗試在項(xiàng)中的GestureOverlayView中及在其中的TextView的onTouch方法中如果MotionEvent的action為down的話,就返回true,這個(gè)系統(tǒng)就不會(huì)處理高亮反色了,但是其實(shí)不是這樣的,到底是怎么樣的呢目前還不清楚,我的解決辦法是在GestureOverlayView中設(shè)置一X背景圖片.就OK了.就算這個(gè)ListView中各個(gè)項(xiàng)高亮反色了.也不會(huì)影響.錯(cuò)誤設(shè)置代碼如下,處理高亮還是不要這樣用了-在
32、這樣的場(chǎng)景下:12345678910111213privatestaticclassIgnoreTouchListenerimplementsView.OnTouchListenerOverridepublicbooleanonTouch(Viewv,MotionEventevent)Log.i(TAG,Ignoretouch+v.getClass()+,+event.getAction();switch(event.getAction()caseMotionEvent.ACTION_DOWN:returntrue;default:break;returnfalse;4. 現(xiàn)在的一個(gè)需要是要在
33、一個(gè)ListView的項(xiàng)中滑動(dòng)時(shí),就表示刪除其中一個(gè)項(xiàng).開(kāi)始用GestureDetector但是,弄了很久還是沒(méi)有反應(yīng).所以作罷,關(guān)鍵在一個(gè)項(xiàng)中,我喜歡滑動(dòng)的時(shí)候能夠有像用筆畫(huà)線一樣的效果.ListView中的項(xiàng)對(duì)應(yīng)布局文件如下 :(名為:orderlist_item.xml)1234567891011121314151617181920開(kāi)始嘗試:這樣:123GestureOverlayViewgestures=(GestureOverlayView)findViewById(R.id.gestures);gestures.addOnGesturePerformedListener(this)
34、;但是這樣會(huì)報(bào)空指針錯(cuò)誤,就是取不到gestures.但是我?guī)蚢ndroid的示例項(xiàng)目也是這樣的.android資源中文章:docs/resources/articles/gestures.后來(lái)我想了一下,在android中的示例項(xiàng)目中,這是一唯一的一個(gè)文件,但是在我的使用場(chǎng)景中這樣的一個(gè)文件在ListView中重復(fù)使用了,想起來(lái)這樣的一個(gè)ID也會(huì)在上面存在多個(gè).于是用R.id.gestures是找不到了,就算用R.layout.orderlist_item也找不到.于是我就在自己實(shí)現(xiàn)的BaseAdapter中的View來(lái)處理這樣的邏輯了:123456789101112131415161718
35、OverridepublicViewgetView(intposition,ViewconvertView,ViewGroupparent)Viewview=null;if(convertView=null)view=mInflater.inflate(R.layout.orderlist_item,null);TextViewtextView=(TextView)view.findViewById(R.id.order_list_item_text);Mapmap=(Map)mData.get(position);StringitemText=(String)map.get(ITEM_TEX
36、T);textView.setText(itemText);view.setTag(mData.get(position);GestureOverlayViewgestures=(GestureOverlayView)view;gestures.addOnGesturePerformedListener(ClientStationActivity.this);returnview;其中處理在主Activity中實(shí)現(xiàn)的OnGesturePerforedListener接口,其中處理方法如下 :12345678910111213OverridepublicvoidonGesturePerforme
37、d(GestureOverlayViewoverlay,Gesturegesture)ArrayListpredictions=mLibrary.recognize(gesture);if(predictions.size()1)return;if(predictions.get(0).score0.27)return;Stringaction=predictions.get(0).name;Log.i(TAG,action:+action+,+predictions.get(0).score);Mapmap=(Map)overlay.getTag();StringitemText=(String)map.get(ITEM_TEXT);/TODO完成刪除上面的代碼有一個(gè)要注意的地方就是.通過(guò)實(shí)際的手勢(shì)來(lái)判斷看你認(rèn)為的一個(gè)比較正確的手勢(shì)的score得分是多少.3.不能在android項(xiàng)目中運(yùn)行Java程序.有時(shí)候想運(yùn)行測(cè)試一下一個(gè)簡(jiǎn)單的Java方法,但是呢今天發(fā)現(xiàn)了這樣一個(gè)問(wèn)題:然后我就想通了.報(bào)告錯(cuò)誤如下 :1234567891011121314*AfatalerrorhasbeendetectedbytheJavaRuntimeEnvironment:*Inte
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025船舶交易服務(wù)合同
- 2025版標(biāo)準(zhǔn)商品買(mǎi)賣(mài)合同范本
- 2025年廣東省農(nóng)作物品種買(mǎi)賣(mài)合同范本
- 人教版小學(xué)一年級(jí)語(yǔ)文下冊(cè)第三單元測(cè)試卷16
- 2025年防疫相關(guān)試題
- 2025年建筑保溫材料檢測(cè)試題
- 護(hù)理安全典型案例分享
- 眼瞼瘙癢的臨床護(hù)理
- 【上海市綠色建筑協(xié)會(huì)】上海綠色照明發(fā)展報(bào)告20231167mb
- 幼兒園語(yǔ)言教育與活動(dòng)設(shè)計(jì) 課件 第5、6章 幼兒園不同結(jié)構(gòu)化程度語(yǔ)言教育活動(dòng)的設(shè)計(jì)和實(shí)施;幼兒園語(yǔ)言教育活動(dòng)實(shí)施的價(jià)值取向與反思
- 新疆維吾爾阿克蘇地區(qū)2023-2024學(xué)年三年級(jí)數(shù)學(xué)第一學(xué)期期末學(xué)業(yè)水平測(cè)試試題含答案
- 水利水電工程施工導(dǎo)流設(shè)計(jì)規(guī)范
- 撫養(yǎng)費(fèi)一次性付清協(xié)議書(shū)
- 每日工作流程物業(yè)保安主管經(jīng)理
- 供應(yīng)商應(yīng)付賬款管理表
- STEM教學(xué)設(shè)計(jì)與實(shí)施PPT完整全套教學(xué)課件
- 《賣(mài)油翁》中學(xué)語(yǔ)文課本劇劇本(通用6篇)
- 材料物理知到章節(jié)答案智慧樹(shù)2023年南開(kāi)大學(xué)
- 思密達(dá)能快速治療壓瘡
- 民俗學(xué)(全套課件330P)課件分享
- 《勒俄特依 彝族古典長(zhǎng)詩(shī) 中華大國(guó)學(xué)經(jīng)典文庫(kù) 》讀書(shū)筆記思維導(dǎo)圖
評(píng)論
0/150
提交評(píng)論