根据packageName构造Context

通常情况下获取当前应用的context的方法是getApplicationContext, 如果根据其他的packageName如何构造 Context呢? Android平台的应用实例其实还可以通过其他方式构造

比如代码:

1.try {

2.Context context=createPackageContext("com.boweifeng.fr", 0);

3.//context已经是com.boweifeng.fr的实例

4.} catch(NameNotFoundException e) {

5.//可能由于pacakgeName不存在所以必须处理该异常

6.}

需要注意的是,createPackageContext方法的第二个参数可选为CONTEXT_INCLUDE_CODE 和 CONTEXT_IGNORE_SECURITY , 定义分别为4和2,上面为0。一般忽略安全错误问题可以通过CONTEXT_IGNORE_SECURITY 标记, 同时可能还需要处理 SecurityException 异常。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容