apk代码混淆与资源混淆众所周知,默认情况下,系统会给app提供一个进程。进程是分配资源和调配的基本单位,拥有独立的内存空间和资源。我们经常的操作是多线程操作。
随着时间的推移,语音,视频,直播的流行,app的大小越来越大,需要的内存空间越来越大。系统默认分配的内存已经不能满足需求,多数时候我们可以在android:minSdkVersion=”11”及以上的应用中,给AndroidManifest.xml的Application标签增加”android:largeHeap=”true”“这句话,请求系统给该应用分配更多可申请的内存。但是这不能从根本上解决问题。
这时候我们就引入了多进程的概念,主进程进行ui的显示,在开启的另外一个线程里进行视频的播放,音乐的播放。这样一个软件就会拥有更多的内存。问题来了,既然是多进程,那么数据的通信是一个不得不提的问题。如果传递的数据不多,我们可以使用bundle,handle。当然我们也可以使用aidl。
同时,需要我们注意的是,在多进程开发中,每次启动一个进程,application类都会初始化一次。