根据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 异常。

你可能感兴趣的:(根据packageName构造Context)