Android 15适配问题

一、前言

目前发现旧版app在新的android15系统中出现无法启动应用的情况

二、原因分析

1. 项目的api配置未设置api 35兼容配置

修改api35注意一下几项:

① switch判断viewid的方式全部需要改为if-else
② module与主项目的资源应用更严格需要区分,无法互相引用string等资源
③ gradle配置更困难,需要使用高版本的gradle并且需要适配的版本。可以用代理下载

2. 出现如下的启动异常

image.png

查询到是由于微信的广播注册导致的这个问题


image.png

按照如下配置修改即可:

//建议动态监听微信启动广播进行注册到微信
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
            context.registerReceiver(new BroadcastReceiver() {
                @Override
                public void onReceive(Context context, Intent intent) {
                    // 将该app注册到微信
                    api.registerApp(PlatformConfig.WX_APP_ID);
                }
            }, new IntentFilter(ConstantsAPI.ACTION_REFRESH_WXAPP), Context.RECEIVER_EXPORTED);
        } else {
            context.registerReceiver(new BroadcastReceiver() {
                @Override
                public void onReceive(Context context, Intent intent) {
                    // 将该app注册到微信
                    api.registerApp(PlatformConfig.WX_APP_ID);
                }
            }, new IntentFilter(ConstantsAPI.ACTION_REFRESH_WXAPP));
        }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容