RePlugin插件
RePlugin框架开发插件时activity默认的标题都是宿主的应用名,这样太不方便,现在需要在插进里面自己设置标题,下面的方法可以获取插件的activity的真实的标签名:
public class RePluginHelper {
//Replugin插件getPluginContext的getPackageName()和正常的getPackageName()返回的是宿主的包名,
//getApplicationInfo()的packageName返回的是插件的包名
public static String getPackageName(Context context){
return context.getApplicationInfo().packageName;
}
/**
* 读取插件的activity的标签名
* @param context
* @return
*/
public static CharSequence getActivityLabel(Activity context){
try {
ActivityInfo activityInfo = context.getPackageManager().getActivityInfo(new ComponentName(getPackageName(context),context.getClass().getCanonicalName()), PackageManager.GET_ACTIVITIES);
CharSequence label = activityInfo.loadLabel(context.getPackageManager());
return label;
} catch (PackageManager.NameNotFoundException e) {
return context.getTitle();
}
}
/**
* 读取插件的应用名
* @param context
* @return
*/
public static CharSequence getAppLabel(Context context){
return context.getApplicationInfo().loadLabel(context.getPackageManager());
}
}