diff --git a/app/build.gradle b/app/build.gradle index 857590638..26ced13aa 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -286,7 +286,7 @@ dependencies { implementation(name: 'CTAccount_sdk_api_v3.7.0_all', ext: 'aar') implementation 'com.github.fodroid:XRadioGroup:v1.5' - implementation files('libs/miit_mdid_1.0.10.aar') + implementation files('libs/msa_mdid_1.0.13.aar') } diff --git a/app/libs/msa_mdid_1.0.13.aar b/app/libs/msa_mdid_1.0.13.aar new file mode 100644 index 000000000..650e98d2d Binary files /dev/null and b/app/libs/msa_mdid_1.0.13.aar differ diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index a179ed865..4f3f119dc 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -342,6 +342,15 @@ public ; } -keep class com.bun.miitmdid.core.** {*;} +-keep class com.bun.** {*;} +-keep class com.asus.msa.** {*;} +-keep class com.heytap.openid.** {*;} +-keep class com.huawei.android.hms.pps.** {*;} +-keep class com.meizu.flyme.openidsdk.** {*;} +-keep class com.samsung.android.deviceidservice.** {*;} +-keep class com.zui.** {*;} +-keep class com.huawei.hms.ads.** {*; } +-keep interface com.huawei.hms.ads.** {*; } -dontwarn com.sdk.** -keep class com.sdk.** { *;} -dontwarn io.realm.** diff --git a/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java b/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java index 07ba91668..e05de6457 100644 --- a/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java +++ b/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java @@ -293,7 +293,11 @@ public class XChatApplication extends Application { super.attachBaseContext(base); // you must install multiDex whatever tinker is installed! MultiDex.install(base); - JLibrary.InitEntry(base); + try{ + JLibrary.InitEntry(base); + }catch (Exception e){ + + } } diff --git a/app/src/main/java/com/yizhuan/erban/utils/MiitHelper.java b/app/src/main/java/com/yizhuan/erban/utils/MiitHelper.java index 0bf1a3baf..35635069d 100644 --- a/app/src/main/java/com/yizhuan/erban/utils/MiitHelper.java +++ b/app/src/main/java/com/yizhuan/erban/utils/MiitHelper.java @@ -6,10 +6,9 @@ import android.util.Log; import androidx.annotation.NonNull; import com.bun.miitmdid.core.ErrorCode; -import com.bun.miitmdid.core.IIdentifierListener; -import com.bun.miitmdid.core.MdidSdk; import com.bun.miitmdid.core.MdidSdkHelper; -import com.bun.miitmdid.supplier.IdSupplier; +import com.bun.supplier.IIdentifierListener; +import com.bun.supplier.IdSupplier; import com.yizhuan.erban.application.XChatApplication; /** @@ -62,34 +61,27 @@ public class MiitHelper implements IIdentifierListener { * A和B不能存在直接和间接依赖关系,否则也会报错 * * */ - private int DirectCall(Context cxt) { - MdidSdk sdk = new MdidSdk(); - return sdk.InitSdk(cxt, this); - } +// private int DirectCall(Context cxt) { +// MdidSdk sdk = new MdidSdk(); +// return sdk.InitSdk(cxt, this); +// } @Override public void OnSupport(boolean isSupport, IdSupplier _supplier) { - if (_supplier == null) { + if(_supplier==null) { return; } - /* String oaid=_supplier.getOaid(); + String oaid=_supplier.getOAID(); String vaid=_supplier.getVAID(); String aaid=_supplier.getAAID(); - String udid=_supplier.getUDID(); StringBuilder builder=new StringBuilder(); - builder.append("support: ").append(isSupport?"true":"false").append("\n"); - builder.append("UDID: ").append(udid).append("\n"); - builder.append("OAID: ").append(oaid).append("\n"); - builder.append("VAID: ").append(vaid).append("\n"); - builder.append("AAID: ").append(aaid).append("\n"); - String idstext=builder.toString();*/ - - XChatApplication.setIsSupportOaid(isSupport); - - String oaid = _supplier.getOAID(); - _supplier.shutDown(); //关闭接口 - if (_listener != null) { - _listener.OnIdsAvalid(oaid); +// builder.append("support: ").append(isSupport?"true":"false").append("\n"); +// builder.append("OAID: ").append(oaid).append("\n"); +// builder.append("VAID: ").append(vaid).append("\n"); +// builder.append("AAID: ").append(aaid).append("\n"); + String idstext=oaid; + if(_listener!=null){ + _listener.OnIdsAvalid(idstext); } } diff --git a/app/src/main/java/com/yizhuan/erban/utils/OAIDUtil.java b/app/src/main/java/com/yizhuan/erban/utils/OAIDUtil.java index f3f805768..63dfbe82e 100644 --- a/app/src/main/java/com/yizhuan/erban/utils/OAIDUtil.java +++ b/app/src/main/java/com/yizhuan/erban/utils/OAIDUtil.java @@ -26,8 +26,8 @@ public class OAIDUtil { if (XChatApplication.isSupportOaid()) { idfa = XChatApplication.getOaid(); } else { -// idfa = ""; - idfa = "获取失败,ErrorCode: " + XChatApplication.getErrorCode(); + idfa = null; +// idfa = "获取失败,ErrorCode: " + XChatApplication.getErrorCode(); } return idfa; } diff --git a/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/QuickPassLoginAct.java b/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/QuickPassLoginAct.java index a9672c70e..a849e8971 100644 --- a/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/QuickPassLoginAct.java +++ b/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/QuickPassLoginAct.java @@ -32,6 +32,9 @@ import com.yizhuan.xchat_android_core.auth.exception.IsSuperAdminException; import com.yizhuan.xchat_android_core.initial.InitialModel; import com.yizhuan.xchat_android_core.statistic.StatisticManager; import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol; +import com.yizhuan.xchat_android_library.utils.TelephonyUtils; +import com.yizhuan.xchat_android_library.utils.codec.MD5Utils; +import com.yizhuan.xchat_android_library.utils.config.BasicConfig; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; @@ -63,10 +66,17 @@ public class QuickPassLoginAct extends BaseLoginAct implements View.OnClickListe private void permission() { checkPermission(() -> { - String type = "bilibili"; String oaid = OAIDUtil.getOaid(); + String imei = TelephonyUtils.getImei(BasicConfig.INSTANCE.getAppContext()); + String imeiMd5 = null; + if (!TextUtils.isEmpty(imei)) { + imeiMd5 = MD5Utils.getMD5String(imei); + } - InitialModel.get().reportAdv(oaid).subscribe(); + if (TextUtils.isEmpty(oaid) && TextUtils.isEmpty(imeiMd5)){ + return; + } + InitialModel.get().reportAdv(oaid,imeiMd5).subscribe(); }, R.string.ask_again, BASIC_PERMISSIONS); diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/initial/IInitialModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/initial/IInitialModel.java index 81aa74b04..670877159 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/initial/IInitialModel.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/initial/IInitialModel.java @@ -43,7 +43,7 @@ public interface IInitialModel extends IModel { * @return */ - Single reportAdv(String oaid); + Single reportAdv(String oaid,String imeiMD5); int getTeenagerMode(); diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/initial/InitialModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/initial/InitialModel.java index 8513a5ceb..aff747798 100644 --- a/core/src/main/java/com/yizhuan/xchat_android_core/initial/InitialModel.java +++ b/core/src/main/java/com/yizhuan/xchat_android_core/initial/InitialModel.java @@ -442,13 +442,7 @@ public class InitialModel extends BaseModel implements IInitialModel { */ @Override - public Single reportAdv(String oaid) { - String imei = TelephonyUtils.getImei(BasicConfig.INSTANCE.getAppContext()); - String imeiMd5 = null; - if (!TextUtils.isEmpty(imei)) { - imeiMd5 = MD5Utils.getMD5String(imei); - } - + public Single reportAdv(String oaid,String imeiMd5) { return api.reportAdv(imeiMd5,oaid) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread());