零碎知识点

知识点一:picasso的像素点比较高

被Glide加载的图片在质量上不如Picasso加载的图片,这是为什么?其实是因为
Glide的Bitmap默认的格式是RGB_565,而Picasso用的是ARGB_8888,所以虽
然质量上不如Picasso(其实在手机上也不明显),但是RGB_565格式的图片仅仅消
耗ARGB_8888格式图片一半的内存。

知识点二:android反射

/**
 * 使用dexClassLoader 加载各个module的入口类
 */
private void dexClassLoader(String className, String env) {

    Intent intent = new Intent(ActionManager.PACKAGE);
    PackageManager pm = getPackageManager();
    List<ResolveInfo> activities = pm.queryIntentActivities(intent, 0);
    ResolveInfo resolveInfo = activities.get(0);
    ActivityInfo activityInfo = resolveInfo.activityInfo;
    String sourceDir = activityInfo.applicationInfo.sourceDir;
    String dataDir = getApplicationInfo().dataDir;
    String nativeLibraryDir = activityInfo.applicationInfo.nativeLibraryDir;
    DexClassLoader dexcl = new DexClassLoader(sourceDir, dataDir, nativeLibraryDir, getClassLoader());

    try {
        Class<?> loadClass = dexcl.loadClass(className);
        Constructor<?> constructor = loadClass.getDeclaredConstructor();
        constructor.setAccessible(true);
        Object instance = constructor.newInstance();
        Method method = loadClass.getMethod("getSingleInstance", null);
        method.invoke(instance, null);

        Method initMethod = loadClass.getMethod("init", Application.class);
        initMethod.invoke(instance, this); //传入Application的实例对象

        Method initEnvMethod = loadClass.getMethod("initEnv", String.class);
        initEnvMethod.invoke(instance, env);

    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    } catch (InstantiationException e) {
        e.printStackTrace();
    } catch (IllegalAccessException e) {
        e.printStackTrace();
    } catch (NoSuchMethodException e) {
        e.printStackTrace();
    } catch (InvocationTargetException e) {
        e.printStackTrace();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值