android AndroidAutoSize 取消第三方库适配问题(两个步)

比如第三方库的Activity是:PictureSelectorSupporterActivity、PictureSelectorTransparentActivity、CropImageActivity

1.在自定义Application 的 onCreate 方法设置:

java 复制代码
    @Override
    public void onCreate() {
        super.onCreate();
        this.mApp=this;
        registerActivityLifecycleCallbacks(this);

        //取消第三方Activity适配
        AutoSizeConfig.getInstance().getExternalAdaptManager().addCancelAdaptOfActivity(PictureSelectorSupporterActivity.class);
        AutoSizeConfig.getInstance().getExternalAdaptManager().addCancelAdaptOfActivity(PictureSelectorTransparentActivity.class);
        AutoSizeConfig.getInstance().getExternalAdaptManager().addCancelAdaptOfActivity(CropImageActivity.class);
    }

2.重写Activity的getResourse()方法:

java 复制代码
    /**
     * 取消第三方库适配
     * @return
     */
    @Override
    public Resources getResources() {
        Log.i(TAG, "getResources");
        Activity curentActivity = null;
        if (getApplication()!=null) {
            curentActivity = ((MyApp) getApplication()).curentActivity;
        }

        //第三方库的Activity
        if (curentActivity instanceof PictureSelectorSupporterActivity
                || curentActivity instanceof PictureSelectorTransparentActivity
                || curentActivity instanceof CropImageActivity) {
            AutoSizeCompat.cancelAdapt(super.getResources());//取消适配
        } else {
            //适配自己项目的Activity
            AutoSizeCompat.autoConvertDensityOfGlobal(super.getResources());//如果没有自定义需求用这个方法
            AutoSizeConfig.getInstance().setDesignWidthInDp(1920);//已1920宽度比例 适配屏幕
        }
        return super.getResources();
    }

AndroidAutoSize地址:https://github.com/JessYanCoding/AndroidAutoSize

相关推荐
游戏开发爱好者81 小时前
HTTPS 内容抓取实战 能抓到什么、怎么抓、不可解密时如何定位(面向开发与 iOS 真机排查)
android·网络协议·ios·小程序·https·uni-app·iphone
Tom4i3 小时前
Android 系统的进程模型
android
介一安全3 小时前
【Frida Android】基础篇9:Java层Hook基础——Hook构造函数
android·网络安全·逆向·安全性测试·frida
杨筱毅3 小时前
【Android】Compose绘制系统 VS 传统View绘制系统
android
介一安全3 小时前
【Frida Android】基础篇10:Native层Hook基础--普通 Hook
android·网络安全·逆向·安全性测试·frida
位步4 小时前
在linux系统中使用通用包安装 Mysql
android·linux·mysql
生莫甲鲁浪戴5 小时前
Android Studio新手开发第二十六天
android·前端·android studio
sky0Lan6 小时前
一个类似 pytest 的 html 报告
android·html·pytest
怪兽20147 小时前
Handler中有Loop死循环,为什么没有阻塞主线程,原理是什么?
android·面试
雨白7 小时前
掌握协程的边界与环境:CoroutineScope 与 CoroutineContext
android·kotlin