1、动态皮肤包的更新:http://pan.baidu.com/s/1cl4LBK
动态皮肤的实现方式可以是:把一些图片打包放在一个apk中然后放在sd卡中,然后应用里面通过匹配当前的皮肤是否是最新的,如果不是则把它下载到本地;然后通过以下的代码解压并使用apk中的资源文件;
AssetManager assetManager = AssetManager.class.newInstance();
Method addAssetPath = assetManager.getClass().getMethod("addAssetPath", String.class);
addAssetPath.invoke(assetManager, dexPath);
Resources superRes = mContext.getResources();
Resources resources = new Resources(assetManager, superRes.getDisplayMetrics(), superRes.getConfiguration());
2、activity的动态跳转(通过类加载器ClassLoader):
try{
Class activity = getApplicationContext().getClassLoader().loadClass(pageName);
Intent intent = new Intent(this,activity);
intent.putExtra(PAGE_START_CHANNEL,START_CHANNEL);
startActivity(intent);
catch(ClassNotFoundException e){
}