打包配置,混淆问题

main
chenglifeng 7 months ago
parent df5f70bfab
commit cf518aeda9
  1. 11
      app/build.gradle
  2. 8
      app/gradle.properties
  3. 26
      app/proguard-rules.pro
  4. 3
      app/src/main/java/com/project/survey/logic/bean/ListResult.kt
  5. 2
      app/src/main/java/com/project/survey/logic/event/Message.kt
  6. 4
      app/src/main/java/com/project/survey/model/ApprovalResponse.kt
  7. 45
      app/src/main/java/com/project/survey/model/ControlNetBean.kt
  8. 3
      app/src/main/java/com/project/survey/model/ControlNetCGBean.kt
  9. 3
      app/src/main/java/com/project/survey/model/ControlNetListBean.kt
  10. 3
      app/src/main/java/com/project/survey/model/ControlNetVersionBean.kt
  11. 3
      app/src/main/java/com/project/survey/model/LoftingListBean.kt
  12. 2
      app/src/main/java/com/project/survey/model/LoginBean.kt
  13. 3
      app/src/main/java/com/project/survey/model/PointMeasureListBean.kt
  14. 2
      app/src/main/java/com/project/survey/model/ProjectBean.kt
  15. 2
      app/src/main/java/com/project/survey/model/TextStyleBean.java
  16. 3
      app/src/main/java/com/project/survey/network/HttpResult.kt
  17. 2
      app/src/main/java/com/project/survey/network/ResponseThrowable.kt
  18. 2
      app/src/main/java/com/project/survey/network/RetrofitClient.kt
  19. 2
      app/src/main/java/com/project/survey/ui/approval/ApprovalActivity.kt
  20. 7
      app/src/main/java/com/project/survey/ui/login/LoginInputCodeActivity.kt
  21. 2
      app/src/main/java/com/project/survey/ui/project/ProjectListFragment.kt
  22. 3
      app/src/main/java/com/project/survey/util/param/Param.java

@ -44,7 +44,7 @@ android {
}
productFlavors {
shanghai {
shsx {
def versionUtils = new SurveyorVersionUtils(project)
versionCode versionUtils.versionCode + 0
versionName versionUtils.versionName
@ -55,6 +55,12 @@ android {
debug {
storeFile file('./debug.keystore')
}
release {
storeFile file(StoreFile)
storePassword StorePassword
keyAlias KeyAlias
keyPassword KeyPassword
}
}
buildTypes {
@ -67,6 +73,7 @@ android {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
@ -76,7 +83,7 @@ android {
abi {
enable true
reset()
include 'arm64-v8a', 'armeabi-v7a'//,'armeabi-v7a', 'x86'//, 'x86_64', 'mips','armeabi',
include 'arm64-v8a' //'armeabi-v7a', 'x86'//, 'x86_64', 'mips','armeabi',
}
}

@ -0,0 +1,8 @@
StoreFile = release.jks
StorePassword = com.shsx.survey.2024
KeyAlias = shsx
KeyPassword = com.shsx.survey.2024
#StoreFile = heike.keystore
#StorePassword = heike6868
#KeyAlias = heike
#KeyPassword = heike6868

@ -160,12 +160,21 @@ public static final int *;
-keepclassmembers class blankj.utilcode.** { *; }
-dontwarn blankj.utilcode.**
-keep class com.chad.library.adapter.** {
#-keep class com.chad.library.adapter.** {
#*;
#}
#-keep public class * extends com.chad.library.adapter.base.BaseQuickAdapter
#-keep public class * extends com.chad.library.adapter.base.BaseViewHolder
#-keepclassmembers class **$** extends com.chad.library.adapter.base.BaseViewHolder {
# <init>(...);
#}
-keep class com.chad.library.adapter4.** {
*;
}
-keep public class * extends com.chad.library.adapter.base.BaseQuickAdapter
-keep public class * extends com.chad.library.adapter.base.BaseViewHolder
-keepclassmembers class **$** extends com.chad.library.adapter.base.BaseViewHolder {
-keep public class * extends com.chad.library.adapter4.BaseQuickAdapter
-keep public class * extends com.chad.library.adapter4.viewholder.QuickViewHolder
-keepclassmembers class **$** extends com.chad.library.adapter4.viewholder.QuickViewHolder {
<init>(...);
}
@ -273,4 +282,11 @@ public static final int *;
-keep class com.bingce.event.WxLoginSuccessEvent{ *; }
# 友盟
-keep class com.umeng.** {*;}
-keep class com.umeng.** {*;}
# Param
-keep class com.project.survey.util.param.Param { *; }
-keepattributes *Param*
-keepclassmembers class com.project.survey.model.** { *; }
-keepclassmembers class com.project.survey.logic.bean.** { *; }
-keepclassmembers class com.project.survey.logic.event.** { *; }

@ -1,3 +1,6 @@
package com.project.survey.logic.bean
import androidx.annotation.Keep
@Keep
data class ListResult<T>(val rows: List<T>, val totalCount: Int)

@ -1,8 +1,10 @@
package com.project.survey.logic.event
import androidx.annotation.Keep
import java.text.SimpleDateFormat
import java.util.*
@Keep
data class Message @JvmOverloads constructor(
var msg: String = "",
var arg1: Int = 0,

@ -1,12 +1,15 @@
package com.project.survey.model
import androidx.annotation.Keep
import com.project.survey.logic.bean.ListResult
@Keep
data class ApprovalResponse(
val badges: Badge,
val data: ListResult<ApprovalBean>
)
@Keep
data class Badge(
val PI_PREAPPROV: Int,
val PI_APPROVED: Int,
@ -37,6 +40,7 @@ data class Badge(
* "urging": null
* }
*/
@Keep
data class ApprovalBean(
val id: String,
val title: String,

@ -1,29 +1,32 @@
package com.project.survey.model
import androidx.annotation.Keep
/**
* {
* "KZW_TYPE_CODE": "02",
* "SY_CREATEUSERID": "c1c843dd971f416da307f5fefa9d782e",
* "KZW_TYPE_NAME": "专用",
* "KZW_APPROVALSTATUS": "",
* "KZW_VERSION": "2024-09-2704",
* "SY_GROUP_COMPANY_ID": "",
* "KZW_MEASUREMENTLEVEL": "2",
* "SY_COMPANY_ID": "V1R0gp2zJ3SvGFNvJdM",
* "KZW_FILE": "",
* "SY_CREATEUSERNAME": "zlh",
* "KZW_MEASUREMENTUNIT": "",
* "KZW_REMARK": "",
* "BD_KZW_ID": "14faecf400d74001ad37ca7b349e9de7",
* "SY_CREATETIME": "2024-09-27 15:36:26",
* "SY_ORG_ID": "systemdepartment",
* "": "2024-09-27",
* "KZW_LCMC": "专用控制网测试2",
* "KZW_MEASUREMENTUNIT_ID": "",
* "KZW_NAME": "专用",
* "BD_XMXX_ID": ""
* }
* "KZW_TYPE_CODE": "02",
* "SY_CREATEUSERID": "c1c843dd971f416da307f5fefa9d782e",
* "KZW_TYPE_NAME": "专用",
* "KZW_APPROVALSTATUS": "",
* "KZW_VERSION": "2024-09-2704",
* "SY_GROUP_COMPANY_ID": "",
* "KZW_MEASUREMENTLEVEL": "2",
* "SY_COMPANY_ID": "V1R0gp2zJ3SvGFNvJdM",
* "KZW_FILE": "",
* "SY_CREATEUSERNAME": "zlh",
* "KZW_MEASUREMENTUNIT": "",
* "KZW_REMARK": "",
* "BD_KZW_ID": "14faecf400d74001ad37ca7b349e9de7",
* "SY_CREATETIME": "2024-09-27 15:36:26",
* "SY_ORG_ID": "systemdepartment",
* "": "2024-09-27",
* "KZW_LCMC": "专用控制网测试2",
* "KZW_MEASUREMENTUNIT_ID": "",
* "KZW_NAME": "专用",
* "BD_XMXX_ID": ""
* }
*/
@Keep
data class ControlNetBean(
val KZW_NAME:String,
val KZW_MEASUREMENTLEVEL:String,

@ -1,5 +1,7 @@
package com.project.survey.model
import androidx.annotation.Keep
/**
* {
* "KZW_TYPE_CODE": "01",
@ -22,6 +24,7 @@ package com.project.survey.model
* "KZWZBCG_POINTNAME": "测点1"
* }
*/
@Keep
data class ControlNetCGBean(
val KZWZBCG_BZ:String,
val KZWZBCG_POINTNAME:String,

@ -1,4 +1,7 @@
package com.project.survey.model
import androidx.annotation.Keep
@Keep
class ControlNetListBean {
}

@ -1,8 +1,11 @@
package com.project.survey.model
import androidx.annotation.Keep
/**
* 控制网版本号
*/
@Keep
class ControlNetVersionBean(val version: String) {

@ -1,4 +1,7 @@
package com.project.survey.model
import androidx.annotation.Keep
@Keep
class LoftingListBean {
}

@ -1,11 +1,13 @@
package com.project.survey.model
import android.os.Parcelable
import androidx.annotation.Keep
import kotlinx.android.parcel.Parcelize
/**
* {"token":"a52e6940-34c9-4f93-8a60-5b13bf25693f","mobilePhone":"15903684576","personId":"fqwerfqergqwer"}
*/
@Keep
@Parcelize
data class LoginBean(
val token: String,

@ -1,4 +1,7 @@
package com.project.survey.model
import androidx.annotation.Keep
@Keep
class PointMeasureListBean {
}

@ -1,6 +1,7 @@
package com.project.survey.model
import android.os.Parcelable
import androidx.annotation.Keep
import kotlinx.android.parcel.Parcelize
//{
@ -30,6 +31,7 @@ import kotlinx.android.parcel.Parcelize
// "SY_ORG_ID": null,
// "XMXX_NAME": "测试项目"
//}
@Keep
@Parcelize
data class ProjectBean(
val XMXX_NAME: String, //项目名称

@ -1,7 +1,9 @@
package com.project.survey.model;
import androidx.annotation.ColorInt;
import androidx.annotation.Keep;
@Keep
public class TextStyleBean {
private String text;
private float textSize;

@ -1,3 +1,6 @@
package com.project.survey.network
import androidx.annotation.Keep
@Keep
data class HttpResult<T>(val code: String, val message: String, val data: T, val success: Boolean)

@ -1,11 +1,13 @@
package com.project.survey.network
import androidx.annotation.Keep
import java.lang.Exception
/**
* Name: ResponseThrowable
* Author: chenglifeng
*/
@Keep
data class ResponseThrowable(
var code: Int,
var msg: String,

@ -83,7 +83,7 @@ object RetrofitClient {
level = if (BuildConfig.DEBUG)
HttpLoggingInterceptor.Level.BODY
else
HttpLoggingInterceptor.Level.NONE
HttpLoggingInterceptor.Level.BODY
})
.sslSocketFactory(
HttpsTrustUtil.createSSLSocketFactory(),

@ -42,7 +42,7 @@ class ApprovalActivity : BaseBindingActivity<ActivityApprovalBinding>(), OnRefre
private val viewModel: ProjectViewModel by viewModels()
@Param
private lateinit var type: String
private var type: String = ""
private val adapter by lazy { ApprovalAdapter() }
private var currentPage = 1

@ -29,16 +29,17 @@ class LoginInputCodeActivity : BaseBindingActivity<ActivityLoginInputCodeBinding
private val viewModel: LoginViewModel by viewModels()
@Param
private lateinit var account: String
private var account: String = ""
@Param
private lateinit var password: String
private var password: String = ""
@Param
private lateinit var mobile: String
private var mobile: String = ""
override fun initView() {
immersionToolbar(mBinding.toolbar)
password = intent.extras?.getString("password")?:""
lifecycleScope.launch {
delay(500L)

@ -36,7 +36,7 @@ class ProjectListFragment : BaseBindingFragment<FragmentProjectListBinding>() {
private val adapter by lazy { ProjectListAdapter() }
@Param
private lateinit var type: String
private var type: String = ""
override fun initView() {
mBinding.recyclerView.addItemDecoration(HorDividerDecoration(mContext))

@ -1,5 +1,7 @@
package com.project.survey.util.param;
import androidx.annotation.Keep;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@ -8,6 +10,7 @@ import java.lang.annotation.Target;
/**
* des 参数解析注解
*/
@Keep
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Param {

Loading…
Cancel
Save