您的位置:首页 > 移动开发 > Android开发

Android源码开发之预制视频音乐等资源

2015-09-18 14:42 671 查看
Rom定制,最常见的就是内置客户提供的视频音乐等文件了,并且要求删除后恢复出厂设置资源还在,对于此类问题,貌似MTK也提供了方法,不过mtk给的方法,代码不好管控

我们可以把资源随Rom放到手机里,再拷到storage目录里

1.在system/media/resource放个android.mk文件,用于拷贝到out的system/media

2.每次开机完成的时候,MediaProvider的MediaScannerReceiver.java都会去接收开机完成的广播,我们可以在这里面进行文件拷贝

packages/providers/MediaProvider/src/com/android/providers/media/MediaScannerReceiver.java

-----------

    @Override

    public void onReceive(Context context, Intent intent) {

----------

sharedPreferences = context.getSharedPreferences("first_boot", Context.MODE_PRIVATE);
boolean first_boot= sharedPreferences.getBoolean("first_boot", true);//如果是第一次开机,则sharedPreferences 的值为空,赋值true
if (first_boot) {
   Intent activityIntent = new Intent();
   activityIntent.setClassName("com.android.providers.media", "com.android.providers.media.CopyFileService");
   context.startService(activityIntent);//启动拷贝文件的Services,由于文件比较大,onReceive方法里不能做耗时操作,可以用service解决
}

                SharedPreferences.Editor editor = sharedPreferences.edit();

  editor.putBoolean("first_boot", false);//赋值false,表示下次开机不用再拷贝了

                editor.commit();

至于CopyFileService.java代码,就是一个文件拷贝过程,从/system/media/resource拷贝到/storage/sdcard0的过程,这里就不再长篇大论了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: