android6.0 缺失HttpClient的相關類的解決方法
android {
useLibrary 'org.apache.http.legacy'}
注意放置的位置:是在android {}中
可以參考:
最新的的已經按上面的方法,更新了。
另外:在eclipse中,加入org.apache.http.legacy.jar後,把android sdk版本改為低於6.0也可以正常使用
附加:
u013004268:加了上面的jar,混淆出現問題
解決方法:
對這個jar,不做混淆處理
下面是混淆配置(eclipse上面測試通過)
混淆配置:
#不混淆android-async-http(這裡的與你用的httpClient框架決定) -keep class com.loopj.android.http.**{*;} #不混淆org.apache.http.legacy.jar -dontwarn android.net.compatibility.** -dontwarn android.net.http.** -dontwarn com.android.internal.http.multipart.** -dontwarn org.apache.commons.** -dontwarn org.apache.http.** -keep class android.net.compatibility.**{*;} -keep class android.net.http.**{*;} -keep class com.android.internal.http.multipart.**{*;} -keep class org.apache.commons.**{*;} -keep class org.apache.http.**{*;}最後是完整的混淆配置檔案的內容:
<pre name="code" class="html">-ignorewarnings # 指定程式碼的壓縮級別 -optimizationpasses 5 # 不使用大小寫混合 -dontusemixedcaseclassnames # 混淆第三方jar -dontskipnonpubliclibraryclasses # 混淆時不做預校驗 -dontpreverify # 混淆時記錄日誌 -verbose # 混淆時所採用的演算法 -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* # 保持哪些類不被混淆:四大元件,應用類,配置類等等 -keep public class * extends android.app.Activity -keep public class * extends android.app.Application -keep public class * extends android.app.Service -keep public class * extends android.content.BroadcastReceiver -keep public class * extends android.content.ContentProvider -keep public class * extends android.app.backup.BackupAgentHelper -keep public class * extends android.preference.Preference -keep public class com.android.vending.licensing.ILicensingService # 保持 native 方法不被混淆 -keepclasseswithmembernames class * { native <methods>; } # 保持自定義控制元件類不被混淆 -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet); } # 保持自定義控制元件類不被混淆 -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet, int); } # 保持自定義控制元件類不被混淆 -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } # 保持列舉 enum 類不被混淆 -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } # 保持 Parcelable 不被混淆 -keep class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator *; } # 這個主要是在layout中寫的onclick方法android:onclick="onClick",不進行混淆 -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } #保持註解 -keepattributes *Annotation* #不混淆android-async-http -keep class com.loopj.android.http.**{*;} #不混淆org.apache.http.legacy.jar -dontwarn android.net.compatibility.** -dontwarn android.net.http.** -dontwarn com.android.internal.http.multipart.** -dontwarn org.apache.commons.** -dontwarn org.apache.http.** -keep class android.net.compatibility.**{*;} -keep class android.net.http.**{*;} -keep class com.android.internal.http.multipart.**{*;} -keep class org.apache.commons.**{*;} -keep class org.apache.http.**{*;}
相關推薦
android6.0 缺失HttpClient的相關類的解決方法
android { useLibrary 'org.apache.http.legacy'} 注意放置的位置:是在android {}中 可以參考: 最新的的已經按上面的方法,更新了。 另外:在eclipse中,加入org.apache.http.legacy.jar後,把android sdk版
python3.6.1+selenium3.0環境安裝問題及解決方法
pre trace service java版本 erro back res exec rem 腳本:(打開火狐瀏覽器,進入百度網頁,搜索selenium) from selenium import webdriver browser = webdriver.F
安裝vCenter6.0遇到的問題以及解決方法
vcenter6.0 vdcpromo vcsservicemanager failed with error code 1603 實驗環境:在Window Server 2008 R2上安裝vCenter6.0,數據庫采用的SQL Server2012 問題一:安裝到50%的時候提示:無法啟動i
Target runtime Apache Tomcat v6.0 is not defined.錯誤解決方法
view js xml val fix for .text each 工程 eclipse 我們在用Eclipse導入一個新的項目時,假設我們使用JDK1.7和tomcat7時,導入的項目會在Eclipse的Marker下提示Target runtime
MATLAB 7.0 無法卸載的解決方法
經典 win -m 一個 main tlab mage ima .com 如果在卸載Matlab時,會彈出一個Exeption calling main 的對話框,死活不讓卸, 包括用卸載工具卸載都不行。 原因是你的XP的主題和Matlab不兼容。在桌面點擊右鍵選擇屬性-
String的相關類和方法
線程安全 叠代 new 當前位置 return nbsp 下一個 解析 緩沖 String的相關類和方法 一、String,StringBuilder,StringBuffer三者的區別 這三個類之間的區別主要是在兩個方面,即運行速度和線程安全這兩方面 1、運行速度:
webpack4.0.1安裝問題及解決方法
style onf 出了 main 但是 sep 提示 js文件 har 2月底的時候,webpack4正式發布了,但是當我們安裝之後,使用下面的語句來打包的時候,發現打包失敗了 webpack ./src/main.js ./dist/bundle.js 並且給出了下
Android studio 升級到3.0後各種報錯解決方法
最近把AS升級到3.2.1後老工程出現了一系列問題 總的來說, 不要隨便用最新的東西, SDK也好,AS也好,對老工程都不友好, 要等其他人躺坑躺的差不多再搞 我是先把gradle直接升級到了5.0, AS升級到了3.2.1 , SDK升到了28, 然後就
【Spring MVC】 錯誤: 找不到或無法載入主類 解決方法
【Spring MVC】 錯誤: 找不到或無法載入主類 解決方法 最近在學習Spring,在學習SpringMVC過程中,將web.xml、Dispatcher-servlet.xml、applicationContext.xml等配置完成之後,卻不懂如何部署專案到to
SSL相關漏洞解決方法
最近用綠盟掃描系統進行內網網系統掃描,有幾臺裝置被掃出了SSL相關漏洞,在此做一個簡短的加固方法。 本次涉及漏洞 1.漏洞名稱:SSL 3.0 POODLE攻擊資訊洩露漏洞(CVE-2014-3566)【原理掃描】 2.SSL/TLS 受誡禮(BAR-MITZVAH)攻擊漏洞(CVE-2015-2808
匯入maven專案步驟及相關錯誤解決方法
一、匯入mavin步驟: Import——maven——Existring maven Projects——選中需要匯入的專案路徑(選擇到專案名稱), 匯入專案後,右擊專案——Properties-->Deployment Assembly --> Add -->&n
one-class svm_predict返回0或無法執行的解決方法(成功)
在使用svm中遇到的問題與解決,首先下面的程式碼是沒有實現的(但邏輯是沒有問題的,只是svm_predict不支援核2,3,4) String path = Environment.getExternalStorageDirectory().toString()+ Fi
Spring Data Jpa 連線MySQL8.0.11碰到的問題解決方法
1: java.math.BigInteger cannot be cast to java.lang.Long 問題: 一開始寫的驅動為:com.mysql.jdbc.Driver 連線時報 java.math.BigInteger cannot be cas
未在本地計算機上註冊Microsoft.ACE.OLEDB.12.0提供程式”問題的解決方法
最近在準備使用VS編寫一個解析Excel檔案的小程式,由於有3年沒有用過C#程式設計,很多細節部分都忘記了,從而導致有些問題得不到很快速的解決。最近就遇到了在使用oledb元件連結Excel時,總是會報出“未在本地計算機上註冊Microsoft.ACE.OLED
android9.0 無法進行http請求解決方法。CLEARTEXT communication to host not permitted by network security
轉自:https://blog.csdn.net/qq_18620851/article/details/80617549 問題: 由於 Android P 限制了明文流量的網路請求,非加密的流量請求都會被系統禁止掉。 如果當前應用的請求是 htttp 請求,而非 https ,
安裝Windows提示無法在驅動器0分割槽上安裝windows解決方法
在通過U盤或光碟安裝win8/win8.1/win10系統時,不少使用者遇到無法安裝的問題,提示“無法在驅動器0的分割槽1上安裝windows”,格式化分割槽1也不能解決,進而提示Windows無法安裝到這個磁碟,選中的磁碟採用GPT/MB
Eclips載入不了rt.jar下面的sun.net.ftp.FtpClient類,解決方法
在做ftp,程式碼中引用 import sun.net.ftp.FtpClient; 報如下錯誤 Access restriction: The type FtpClient is not accessible due torestriction on required
面試題--三個執行緒迴圈列印ABC 10次:另類解決方法
看到網上有各種寫法,但總感覺的看起來晦澀難懂。於是自己寫了一個,如下: import java.util.concurrent.atomic.AtomicBoolean; class Printer extends Thread { public AtomicBoo
ajax跨域問題的另類解決方法
我們知道瀏覽器基於安全的考慮,AJAX只能訪問本域下的資源,而不能跨域訪問。也就是說,domain1.com站點中的AJAX只能訪問domain1.com站點下的資源,而不能跨域訪問domain2.com站點中的資源.這就是AJAX跨域問題. 但如果要訪問不同域的資料時,由
Target runtime Apache Tomcat v8.0 is not defined.錯誤解決方法
新匯入的一個web工程,在problems中顯示錯誤是:Target runtime Apache Tomcatv8.0 is not defined. 終於找到解決方法。方法是:在工程目錄下的.settings資料夾裡,開啟org.eclipse.wst.common.p