想要快速解決該問題可以直接看文章結(jié)尾望薄,前面是我踩坑的歷程
踩坑歷程
最近公司入手了兩臺三臺全新的測試手機疟游,一臺華為meta10,一臺OPPO R11plus還有一臺Vivo X20痕支,本來想美滋滋的拿來做調(diào)試使用颁虐,結(jié)果不盡人意,除了華為能夠正常在deBug模式下進行直接安裝調(diào)試使用卧须,其余兩臺都報錯另绩,OPPO安裝之后無法啟動,vivo直接安裝不上(直接從應(yīng)用市場下載花嘶,或者打包正式APK是沒有問題的)笋籽,百度了大半天也沒能找到解決的辦法。
??????????????????????????????????????????????????????OPPO手機出錯截圖
???????????????????????????????????????????????????????Vivo手機出錯截圖
由于我個人使用OPPO這臺手機椭员,找了半天發(fā)現(xiàn)OPPO的官方論壇也有很多人在說這個問題车海,都說調(diào)試不了,然后也沒有解決方法隘击,當(dāng)時的我就以為這就是OPPO的問題呀侍芝,然后興致勃勃的注冊了個OPPO的賬號,也發(fā)了個帖子在那里問(因為之前別人問的帖子已經(jīng)關(guān)閉了埋同,而且沒有正確的解答)州叠,發(fā)帖子之后立馬就有人回復(fù),OPPO這個效率還是很高的凶赁,值得稱贊咧栗。下面是帖子的截圖
然后我就根據(jù)他們的回復(fù)錄屏呀,截圖啊虱肄,抓Log呀致板,然而并沒有什么卵用,他們給我的方案什么的都比較雞肋咏窿,不過OPPO還算是很負責(zé)的可岂,還加我QQ啊什么的給我解答,最后讓我把直接運行的deBug的APK發(fā)給他們翰灾,然后他們說用我們的APK安裝了很多別的手機,結(jié)果都還是不能運行稚茅,這特么就尷尬了呀纸淮,然后自己安裝在別的測試機上運行,結(jié)果真的很尷尬呀亚享,還真是都不行咽块,排除了是他們的手機系統(tǒng)的問題呀。默默的尷尬了很久欺税,想想自己還真是進入了思維誤區(qū)啊侈沪,看到網(wǎng)上很多人說他們手機有這個問題揭璃,剛好又是新出來的機子,結(jié)果就想當(dāng)然的以為是他們的問題了亭罪。(很難受瘦馍,默默的傷心一波(;′⌒`))应役。
好了情组,傷心之后這個問題還是要解決的呀,不然公司買了那么貴的測試機來箩祥,就只能測試安裝一下應(yīng)用玩一玩了院崇,那多浪費呀,本著節(jié)約是中華民族的傳統(tǒng)美德袍祖,必須不能浪費呀底瓣,要多利用手機多制造用途呀,還是得把這個問題搞定呀蕉陋。自己再回歸原點捐凭,找是不是自己這邊的問題。重新deBug運行在之前低版本的手機上寺滚,完全沒有問題柑营,調(diào)試功能什么的杠杠的。再運行到OPPO手機上村视,還是一樣的崩潰官套,知道是自己去問題,然后就去找唄蚁孔,一看log奶赔,MD還能這樣子玩,崩潰竟然報出這種BUG
竟然報我們的Application文件找不到杠氢,好吧站刑,這個才是問題的根源,繼續(xù)百度找問題的解決方案吧鼻百,經(jīng)過一番搜索和調(diào)試之后绞旅,定位到了問題,竟然是gradle的問題
gradle的版本大于2.3.0之后温艇,在高版本運行時就有可能導(dǎo)致這個問題發(fā)生因悲。
將gradle版本改成2.3.0以下以后直接deBug運行結(jié)果居然就神奇的運行起來了,真的是賊激動呀勺爱。MD 終于出來了晃琳,然后興致沖沖的去開啟調(diào)試功能,打斷點調(diào)試,結(jié)果尼瑪呦 ?斷點直接跳過去了卫旱,沒有作用H俗啤!顾翼!當(dāng)時真是要砸電腦了...但是作為一個優(yōu)秀的程序員(其實是碼農(nóng))投放,生活的經(jīng)歷和閱歷鍛造出我強大的內(nèi)心素質(zhì)(其實完全是扯淡O(∩_∩)O),我還是喝了口涼水冷靜下來暴构,再看自己的一些配置問題跪呈,進行不斷的調(diào)試,終于發(fā)現(xiàn)問題的原因了取逾。
我們工程在deBug的模式下開啟混淆模式耗绿,這樣導(dǎo)致了無法斷點調(diào)試。直接將混淆關(guān)閉之后砾隅,再運行工程就可以完美的進行deBug模式并且調(diào)試了误阻。(當(dāng)然如果不需要打斷點調(diào)試的話,直接將上圖deBug模式下晴埂,debuggable設(shè)置為false就可以用了究反,gradle文件的版本都不用改)
快速解決方法
1.gradle的版本設(shè)置需要小于2.3.0 ??
路徑在工程build.gradle文件下 dependencies 里面 ?設(shè)置為 classpath'com.android.tools.build:gradle:2.2.3'(小于2.3.0就好)
2.deBug模式下關(guān)閉混淆
APP目錄下build.gradle文件里面的buildTypes節(jié)點下 將debug節(jié)點里面minifyEnabled 設(shè)置為false即可