如何获取 android 渠道名称
答案:2 悬赏:10
解决时间 2021-02-22 05:52
- 提问者网友:江鱼
- 2021-02-21 05:59
如何获取 android 渠道名称
最佳答案
- 二级知识专家网友:我的任性你不懂
- 2021-02-21 07:38
public static String getChannelName(Activity ctx) {
if (ctx == null) {
return null;
}
String channelName = null;
try {
PackageManager packageManager = ctx.getPackageManager();
if (packageManager != null) {
//注意此处为ApplicationInfo 而不是 ActivityInfo,因为友盟设置的meta-data是在application标签中,而不是某activity标签中,所以用ApplicationInfo
ApplicationInfo applicationInfo = packageManager.getApplicationInfo(ctx.getPackageName(), PackageManager.GET_META_DATA);
if (applicationInfo != null) {
if (applicationInfo.metaData != null) {
channelName = applicationInfo.metaData.getString("");
}
}
}
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return channelName;
}
提取为通用方法:
public static String getAppMetaData(Context ctx, String key) {
if (ctx == null || TextUtils.isEmpty(key)) {
return null;
}
String resultData = null;
try {
PackageManager packageManager = ctx.getPackageManager();
if (packageManager != null) {
ApplicationInfo applicationInfo = packageManager.getApplicationInfo(ctx.getPackageName(), PackageManager.GET_META_DATA);
if (applicationInfo != null) {
if (applicationInfo.metaData != null) {
resultData = applicationInfo.metaData.getString(key);
}
}
}
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return resultData;
}
全部回答
- 1楼网友:摧毁过往
- 2021-02-21 08:16
public static string getchannelname(activity ctx) {
if (ctx == null) {
return null;
}
string channelname = null;
try {
packagemanager packagemanager = ctx.getpackagemanager();
if (packagemanager != null) {
//注意此处为applicationinfo 而不是 activityinfo,因为友盟设置的meta-data是在application标签中,而不是某activity标签中,所以用applicationinfo
applicationinfo applicationinfo = packagemanager.getapplicationinfo(ctx.getpackagename(), packagemanager.get_meta_data);
if (applicationinfo != null) {
if (applicationinfo.metadata != null) {
channelname = applicationinfo.metadata.getstring("");
}
}
}
} catch (packagemanager.namenotfoundexception e) {
e.printstacktrace();
}
return channelname;
}
抽取之后:
public static string getappmetadata(context ctx, string key) {
if (ctx == null || textutils.isempty(key)) {
return null;
}
string resultdata = null;
try {
packagemanager packagemanager = ctx.getpackagemanager();
if (packagemanager != null) {
applicationinfo applicationinfo = packagemanager.getapplicationinfo(ctx.getpackagename(), packagemanager.get_meta_data);
if (applicationinfo != null) {
if (applicationinfo.metadata != null) {
resultdata = applicationinfo.metadata.getstring(key);
}
}
}
} catch (packagemanager.namenotfoundexception e) {
e.printstacktrace();
}
return resultdata;
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯