proguard
This commit is contained in:
13
app/proguard-rules.pro
vendored
13
app/proguard-rules.pro
vendored
@@ -87,6 +87,11 @@
|
||||
-keep public class androidx.**{*;}
|
||||
-keep public class * extends androidx.**{*;}
|
||||
-keep interface androidx.**{*;}
|
||||
-keep class androidx.appcompat.app.*{*;}
|
||||
-keep class androidx.appcompat.app.AppCompatActivity{*;}
|
||||
-keep class androidx.appcompat.app.AppCompatCallback{*;}
|
||||
-keep class androidx.appcompat.app.AppCompatDelegate{*;}
|
||||
|
||||
-dontwarn androidx.**
|
||||
|
||||
-keep public class android.support.design.R$* { *; }
|
||||
@@ -245,11 +250,15 @@
|
||||
}
|
||||
|
||||
#-----ARouter-----
|
||||
-keep public class com.alibaba.android.arouter.routes.**{*;}
|
||||
-keep public class com.alibaba.android.arouter.facade.**{*;}
|
||||
-keep class com.alibaba.android.arouter.routes.*{*;}
|
||||
-keep class com.alibaba.android.arouter.facade.annotation.*{*;}
|
||||
-keep class com.alibaba.android.arouter.facade.enums.*{*;}
|
||||
-keep class com.alibaba.android.arouter.facade.model.*{*;}
|
||||
-keep class com.alibaba.android.arouter.facade.template.IProvider{*;}
|
||||
-keep class * implements com.alibaba.android.arouter.facade.template.ISyringe{*;}
|
||||
# If you use the byType method to obtain Service, add the following rules to protect the interface:
|
||||
-keep interface * implements com.alibaba.android.arouter.facade.template.IProvider
|
||||
-keep class * implements com.alibaba.android.arouter.facade.template.IProvider
|
||||
# If single-type injection is used, that is, no interface is defined to implement IProvider, the following rules need to be added to protect the implementation
|
||||
# -keep class * implements com.alibaba.android.arouter.facade.template.IProvider
|
||||
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
-keep class com.mogo.httpdns.IMogoHttpDns{*;}
|
||||
-keep class com.mogo.httpdns.MogoHttpDnsHandler{*;}
|
||||
@@ -2,7 +2,6 @@ package com.mogo.httpdns;
|
||||
|
||||
import androidx.annotation.Keep;
|
||||
|
||||
public
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2020/11/18
|
||||
@@ -10,7 +9,7 @@ public
|
||||
* 描述
|
||||
*/
|
||||
@Keep
|
||||
class HttpDnsConst {
|
||||
public class HttpDnsConst {
|
||||
|
||||
@Keep
|
||||
public static final String PATH = "/httpdns/api";
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.mogo.httpdns;
|
||||
import androidx.annotation.Keep;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
public
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2020/11/19
|
||||
@@ -11,7 +10,7 @@ public
|
||||
* dns 解析回调
|
||||
*/
|
||||
@Keep
|
||||
interface IHttpDnsCallback {
|
||||
public interface IHttpDnsCallback {
|
||||
|
||||
@Keep
|
||||
void onParsed( @Nullable String ip );
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.mogo.httpdns;
|
||||
|
||||
import androidx.annotation.Keep;
|
||||
|
||||
public
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2020/11/19
|
||||
@@ -10,7 +9,7 @@ public
|
||||
* dns ttl 通知
|
||||
*/
|
||||
@Keep
|
||||
interface IHttpDnsTtlCallback {
|
||||
public interface IHttpDnsTtlCallback {
|
||||
|
||||
@Keep
|
||||
void onTtl();
|
||||
|
||||
@@ -9,7 +9,6 @@ import com.mogo.utils.network.HttpDns;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2020/11/18
|
||||
@@ -17,13 +16,14 @@ public
|
||||
* http 请求做http dns转换
|
||||
*/
|
||||
@Keep
|
||||
interface IMogoHttpDns extends IProvider {
|
||||
public interface IMogoHttpDns extends IProvider {
|
||||
|
||||
/**
|
||||
* 获取 dns 代理实例
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Keep
|
||||
@Nullable
|
||||
HttpDns dns();
|
||||
|
||||
|
||||
@@ -18,8 +18,10 @@ class MogoHttpDnsHandler {
|
||||
|
||||
}
|
||||
|
||||
private static IMogoHttpDns sHttpDns;
|
||||
@Keep
|
||||
private static volatile IMogoHttpDns sHttpDns;
|
||||
|
||||
@Keep
|
||||
public static IMogoHttpDns getHttpDnsApi() {
|
||||
if ( sHttpDns == null ) {
|
||||
synchronized ( MogoHttpDnsHandler.class ) {
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
import android.util.ArrayMap;
|
||||
|
||||
import androidx.annotation.Keep;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
@@ -30,6 +31,7 @@ import java.util.Map;
|
||||
|
||||
import static com.mogo.httpdns.HttpDnsConst.HTTP_DNS_ADDRESS_TYPE_HTTP;
|
||||
|
||||
@Keep
|
||||
@Route(path = HttpDnsConst.PATH)
|
||||
public class MogoHttpDns implements IMogoHttpDns, HttpDns, OnAddressChangedListener {
|
||||
private HttpDnsHelper httpDnsHelper;
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
-keep class com.mogo.httpdns.noop.*{*;}
|
||||
@@ -24,6 +24,7 @@ import com.mogo.httpdns.MogoHttpDnsHandler;
|
||||
import com.mogo.utils.ThreadPoolService;
|
||||
import com.mogo.utils.TipDrawable;
|
||||
import com.mogo.utils.TipToast;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
import com.mogo.utils.network.NetConfig;
|
||||
|
||||
import java.security.SecureRandom;
|
||||
@@ -157,7 +158,9 @@ public abstract class AbsMogoApplication extends Application {
|
||||
}
|
||||
|
||||
IMogoHttpDns dns = MogoHttpDnsHandler.getHttpDnsApi();
|
||||
|
||||
if(dns == null){
|
||||
Logger.d(TAG,"dns is null");
|
||||
}
|
||||
NetConfig.instance().setSignaturePrefix( Constants.SIGN_PREFIX )
|
||||
.setPublicParams( ParamsUtil.getStaticParams() )
|
||||
.setHostnameVerifier( new AllAllowedHostnameVerifier() )
|
||||
|
||||
@@ -4,4 +4,5 @@
|
||||
-keep class com.mogo.utils.glide.GlideRoundedCornersTransform.CornerType
|
||||
-keep class com.mogo.utils.logger.LogLevel{*;}
|
||||
-keep class com.mogo.utils.sqlite.**{*;}
|
||||
-keep class com.mogo.utils.network.HttpDns{*;}
|
||||
-keep class com.mogo.utils.network.HttpDns{*;}
|
||||
-keep class com.mogo.httpdnshelper.sdk.**{*;}
|
||||
@@ -139,9 +139,9 @@ HTTPDNS_NOOP_VERSION = 2.0.12
|
||||
|
||||
######## 外部依赖引用
|
||||
# 车聊聊
|
||||
CARCHATTING_VERSION=2.2.50
|
||||
CARCHATTING_VERSION=2.2.51
|
||||
# 车聊聊接口
|
||||
CARCHATTINGPROVIDER_VERSION=1.1.8
|
||||
CARCHATTINGPROVIDER_VERSION=1.1.9
|
||||
# websocket
|
||||
WEBSOCKET_VERSION=1.1.7
|
||||
# loglib
|
||||
|
||||
@@ -11,7 +11,6 @@ import androidx.appcompat.app.AppCompatDelegate;
|
||||
import androidx.appcompat.app.SkinAppCompatDelegateImpl;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.mogo.commons.AbsMogoApplication;
|
||||
import com.mogo.skin.support.IMogoSkinSupportInstaller;
|
||||
import com.mogo.skin.support.SkinMode;
|
||||
import com.mogo.skin.support.SkinSupportInstallerConstants;
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
-keep class com.mogo.skin.support.noop.SkinSupportInstaller{*;}
|
||||
@@ -1 +1,6 @@
|
||||
-keep class com.mogo.skin.support.**{*;}
|
||||
-keep class com.mogo.skin.support.helper.*{*;}
|
||||
-keep class com.mogo.skin.support.SkinMode{*;}
|
||||
-keep class com.mogo.skin.support.MogoSkinManager{*;}
|
||||
-keep class com.mogo.skin.support.IMogoSkinSupportInstaller{*;}
|
||||
-keep class com.mogo.skin.support.IMogoSkinCompatSupportable{*;}
|
||||
-keep class com.mogo.skin.support.SkinSupportInstallerConstants{*;}
|
||||
|
||||
@@ -4,28 +4,35 @@ import android.app.Activity;
|
||||
import android.app.Application;
|
||||
import android.os.Bundle;
|
||||
|
||||
import androidx.annotation.Keep;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.appcompat.app.AppCompatCallback;
|
||||
import androidx.appcompat.app.AppCompatDelegate;
|
||||
|
||||
import com.alibaba.android.arouter.facade.template.IProvider;
|
||||
|
||||
public
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2020/8/28
|
||||
*
|
||||
* 描述
|
||||
*/
|
||||
interface IMogoSkinSupportInstaller extends IProvider {
|
||||
@Keep
|
||||
public interface IMogoSkinSupportInstaller extends IProvider {
|
||||
|
||||
@Keep
|
||||
void install( Application application );
|
||||
|
||||
@Keep
|
||||
void loadSkin( SkinMode skinMode );
|
||||
|
||||
@Keep
|
||||
AppCompatDelegate getSkinAppCompatDelegate( AppCompatActivity activity, AppCompatDelegate superDelegate, AppCompatCallback callback );
|
||||
|
||||
@Keep
|
||||
void onCompensateActivityCreated( Activity activity, Bundle savedInstanceState );
|
||||
|
||||
@Keep
|
||||
void onDestroy();
|
||||
}
|
||||
|
||||
@@ -1,24 +1,31 @@
|
||||
package com.mogo.skin.support;
|
||||
|
||||
import androidx.annotation.Keep;
|
||||
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
|
||||
public
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2020/8/28
|
||||
* <p>
|
||||
* 描述
|
||||
*/
|
||||
class MogoSkinManager {
|
||||
@Keep
|
||||
public class MogoSkinManager {
|
||||
|
||||
@Keep
|
||||
private IMogoSkinSupportInstaller mInstaller;
|
||||
|
||||
@Keep
|
||||
private static volatile MogoSkinManager sInstance;
|
||||
|
||||
@Keep
|
||||
private MogoSkinManager() {
|
||||
mInstaller = ARouter.getInstance().navigation( IMogoSkinSupportInstaller.class );
|
||||
}
|
||||
|
||||
@Keep
|
||||
public static MogoSkinManager getInstance() {
|
||||
if ( sInstance == null ) {
|
||||
synchronized ( MogoSkinManager.class ) {
|
||||
@@ -30,6 +37,7 @@ class MogoSkinManager {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
@Keep
|
||||
public synchronized void release() {
|
||||
sInstance = null;
|
||||
}
|
||||
@@ -39,6 +47,7 @@ class MogoSkinManager {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
@Keep
|
||||
public IMogoSkinSupportInstaller getInstaller() {
|
||||
return mInstaller;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user