360加固后,夜神模拟器安装崩溃

文献参考

Android的.so文件、ABI和CPU的关系

夜神模拟器CPU架构
夜神模拟器采用的架构.png

说明夜神采用的架构是X86的架构,X86支持也同时支持 armeabi armeabi-v7a,但是并不保证说100%不会发生崩溃的现象,X86是以32位模式运行 armeabi armeabi-v7a

以下是通过代码的方式得到在夜神模拟器里面,夜神支持的架构。


通过代码获取支持的类型.jpg
代码
 /**
    * @date 创建时间:2020/10/12 0012
    * @auther gaoxiaoxiong
    * @Descriptiion 获取CPU支持的架构
    **/
    public void getCPUABI() {
        final String[] supportAbisArray = getStringList("ro.product.cpu.abilist", ",");
        if (supportAbisArray != null && supportAbisArray.length > 0) {
            for (String s : supportAbisArray) {
                MLLogUtils.gxx_error("支持的架构有=" + s);
            }
        }
    }


    private String[] getStringList(String property, String separator) {
        try {
            Class systemPropertiesClass = Class.forName("android.os.SystemProperties");
            Method m = systemPropertiesClass.getMethod("get", String.class);
            String navBarOverride = (String) m.invoke(systemPropertiesClass, property);
            return navBarOverride.isEmpty() ? new String[0] : navBarOverride.split(separator);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (NoSuchMethodException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        }
        return null;
    }
360加固后崩溃的原因(怀疑)

1、我项目只支持 armeabi-v7a ,但是使用360加固后,会在armeabi-v7a文件夹多出一个 libX86Bridge.so ,当然我第一眼看到这个名字给我的第一个感觉是为X86准备的,后面我又看到有人说了类似的问题,但是在真机是不会崩溃的,只是在模拟器上会这样,所以应该是不够兼容导致的。

你可能感兴趣的:(360加固后,夜神模拟器安装崩溃)