1. 程式人生 > >Android studio 混淆、打包、驗證是否成功

Android studio 混淆、打包、驗證是否成功

大家好,跟大家分享一個MAC上混淆打包的經驗;

前言:

單挑Android專案,最近即時通訊用到環信,整合sdk的時候 官方有一句

在 ProGuard 檔案中加入以下 keep。

?
12-keep class com.hyphenate.** {*;}-dontwarn com.hyphenate.**

即:混淆規則。 自己沒寫過關於混淆打包的文章,在此補上。

下面瞭解Android studio環境下 專案混淆打包的操作。

一、打包:

即 將Android專案生成.apk檔案,讓使用者去安裝。

1、工具欄 Build->Generate Signed APK..

2、出現這個介面,第一次進入的話編輯框都是空的,然後點選Crete new...按鈕

3、這裡,填一些相關資訊,具體內容就不詳說了

4、然後回到第一步,這時候點選按鈕Next, Build Type選擇release Finish即可,然後在 APK Destination Folder目錄下就生成專案的apk包

打包過程如上,over。

二、混淆

做開發的都知道我們可以通過一些工具來反編譯一個Apk,得到其中的資源,意圖好的也許就是為了參考你專案中優秀的程式碼。意圖不好的也許會反編譯Apk來找到你專案中的漏洞,對專案安全做出威脅。

所以現在我們在打包一個專案之前,都要對專案進行混淆處理,讓Apk無法被輕易的反編譯,提高產品的安全性。

混淆操作需要進行一些配置。

在app目錄下的build.gradle檔案中修改android{} 區域內程式碼

1、

?
1234//執行lint檢查,有任何的錯誤或者警告提示,都會終止構建lintOptions {abortOnError false}

2、

?
1234567891011121314151617181920212223buildTypes {debug {// 顯示LogbuildConfigField "boolean", "LOG_DEBUG", "true"versionNameSuffix "-debug"minifyEnabled falsezipAlignEnabled falseshrinkResources falsesigningConfig signingConfigs.debug}release {
// 不顯示LogbuildConfigField "boolean", "LOG_DEBUG", "false"//混淆minifyEnabled true//Zipalign優化zipAlignEnabled true// 移除無用的resource檔案shrinkResources true//前一部分代表系統預設的android程式的混淆檔案,該檔案已經包含了基本的混淆宣告,後一個檔案是自己的定義混淆檔案proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}

3、修改 proguard

首先是一些固定的

?
1234567891011121314151617

相關推薦

Android studio 混淆打包驗證是否成功

大家好,跟大家分享一個MAC上混淆打包的經驗;前言:單挑Android專案,最近即時通訊用到環信,整合sdk的時候 官方有一句在 ProGuard 檔案中加入以下 keep。?12-keep class com.hyphenate.** {*;}-dontwarn com.h

Android Studio安裝部署系列】二十二Android studio自動生成setget方法

setter 自動生成 全選 style 原創文章 back .com 安裝部署 dash 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 操作步驟 將光標放置我們所要生成get,set方法的實體類空白處——然後右鍵—&mdas

android studio上配置git使用git

這篇部落格是寫關於在android studio上配置git、使用git。前提是你下載了git。 如果圖片看不太清可以放大網頁看。 第一步:File –Settings – Version Control –git 找到git 如下圖 找到git.exe的安裝的路徑,之後

Android Studio 混淆打包及常見第三方依賴的混淆配置

首先要在build.gradle中開啟混淆,也就是minifyEnabled true,我用的build.gradle具體如下所示:def releaseTime() { return new Date().format("yyyy.MM.dd", TimeZone.

Android studio匯入專案卡住匯入後目錄不正確且不能執行的解決辦法

AndroidStudio匯入專案一直卡在Building gradle project info,實際上是因為你匯入的這個專案使用的gradle與你已經擁有的gradle版本不一致,導致需要下載該專案需要的gradle版本,不知是被牆了還是什麼原因,反正就是會一直卡住,直至下載完成(如果能下載完成的話,

android studio svn檢出提交程式碼時一直彈出輸入svn使用者資訊

看了好多貼子,也試了好多方法一直沒好,輸入使用者資訊沒有效果,還是一直提示 就摸索到簡單粗暴額方法,直接在C:\Users\Administrator\AppData\Roaming\Subve

Android Studio 和 SDK 下載安裝和環境變數配置

win10下Android Studio和SDK下載、安裝和環境變數配置              ------made by siwuxie095 1、首先必須安裝Java  JDK   (Java JDK下載、安裝和環境變數配置,傳送陣:點選開始傳送)

Android Studio下新增libraryjar包so包

新增jar包 複製jar檔案,貼上到 Project標籤下app/libs資料夾下。 然後新增到依賴庫:可以右鍵jar包選擇“Add As Library”。或者:ctrl+shift+alt+s進

Android Studio---常用快捷鍵更改預設快捷鍵

開發環境:Windows 7 1. 書籤 描述:新增某行程式碼做書籤標誌,方便之後查詢跳轉 快捷鍵: 新增/移除書籤 —> F11 新增/移除帶標記的書籤 —> Ctrl

Android程式簽名詳解打包釋出到Google play步驟

下文在載轉載文章的基礎,Buaaroid進行了修改和完善,故發為原創,特此說明。 - - -- - - - -- - - - - -- - -- - - - - -- - - - -- - - - -  本文主要講解Android應用程式簽名相關的理論知識,包括:什麼是簽名

Android Studio(一):介紹安裝配置

Android Studio相關部落格: 介紹:     Android Studio是一個全新的Android開發環境,基於IntelliJ IDEA。類似Eclipse ADT,Android Studio提供了整合的A

Android Studio 混淆打包apk步驟

android APP開發後,不想將程式碼進行公開,有保護價值,最好進行混淆打包操作,主要有如下三個步驟 一、Android studio  build相關配置修改 修改app目錄下的build.gradle檔案,參考如下: buildTypes {     debu

Android程式簽名詳解打包釋出到Google play步驟

本文主要講解Android應用程式簽名相關的理論知識,包括:什麼是簽名、為什麼要給應用程式簽名、如何給應用程式簽名等。 1、什麼是簽名?      如果這個問題不是放在Android開發中來問,如果是放在一個普通的版塊,我想大家都知道簽名的含義。可往往就是將一些生活中常用的

Android studio 自己定義打包APK名稱

nts 名稱 code apk conf androi 版本 ant each Android Studio打包應用默認生成的apk名稱是:app-release.apk 、假設我們要讓生成的apk名跟我們版本號包名有聯系的話。那我們就要自己定義生成的apk名了,要

Android studio 自定義打包apk名

roi fault targe test 包名 如果 nts time css Android Studio打包應用默認生成的apk名稱是:app-release.apk 、如果我們要讓生成的apk名跟我們版本包名有聯系的話,那我們就要自定義生成的apk名了 需要在bui

jenkins+Gitlab+maven+tomcat實現自動化集成打包部署。

linux 編譯 oracle system group org 51cto check soft 為什麽需要持續集成呢? 1.因為在開發的過程中,用於階段性地構建出產品。這樣可以更加清楚地審視產品的不足之處。2.由於在某些情況下,例如有緊急bug的時候,研發的版本更新可能

Android studio生成APK打包,修改生成APK的路徑和名字

在app的build.gradle的android新增輸出時候的路徑和名字 android { compileSdkVersion 26 defaultConfig { applicationId "com.example.test" minSdk

Android Studio 自定義打包apk名字

Android Studio打包的時候,我們想自定義自己的檔名,則可以使用 applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = outpu

android studio分模組打包apk,多渠道打包,差異化打包

AS利用Gradle實現稍作修改(包名差異(需求如:測試機同時安裝測試版和釋出版)、功能較小差異、圖示應用名不同等較小差異化需求)打包多個不同apk的功能 實現方法 在APP的buid.gradle

Android Studio 多環境打包(測試,開發,生產)

Android Studio 多環境打包 現在一般公司都擁有三套以上的環境,開發環境,測式環境,生產環境,有一些要求比較嚴格的公司還有一個預生產環境.這對公司來說是正常的,但是確苦了我們前端的開發人員,每次一在做上線之前,都要打一個測試包,需要把相關的伺服器路徑,日誌級別都要做一下修