美文网首页
Android 获取其他App的资源文件

Android 获取其他App的资源文件

作者: 孤独的根号十二 | 来源:发表于2018-12-29 17:36 被阅读20次

    Context有一个方法,可以创建其它程序的Context,通过创建的这个Context,就可以访问该软件包的资源,甚至可以执行其它软件包的代码,注意两个app中android:shareUserId=""和签名必须相同。
    两个或者多个声明了同一种sharedUserid的APK可共享彼此的数据,并且可运行在同一进程中。
    通过声明特定的sharedUserId,该APK所在的进程将被赋予指定UID

    createPackageContext

             try {
                        Context context = mContext.createPackageContext(packageName,
             Context.CONTEXT_INCLUDE_CODE | Context.CONTEXT_IGNORE_SECURITY);
    
                        resource = new LoadedResource();
                        resource.packageName = packageName;
                        resource.resources = context.getResources();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
    

    用途:
    把需要替换的资源,放在一个空的android 应用程序的drawable-**目录下面即可,编译,运行该apk,查找资源时,就需要用到createPackageContext获取对应包名的Context实例,然后通过context来查找对应的资源

    相关文章

      网友评论

          本文标题:Android 获取其他App的资源文件

          本文链接:https://www.haomeiwen.com/subject/bmsplqtx.html