介绍
小编给大家分享一下安卓如何获取应用的唯一标识applicationId,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
使用getIdentifier()方法可以方便的获各应用包下的指定资源ID。
<强>方式一强>
int indentify =, getresource () .getIdentifier (“com.test.demo:可拉的/图标”,零,零);
第一个参数格式是:包名+:+资源文件夹名+/+资源名;是这种格式然后其他的可以零为
<强>方式二强>
intindentify=, getresource () .getIdentifier(“图标”,“可移动”,“com.test.demo”);
第一个参数为ID名,第二个为资源属性是ID或者是可拉的,第三个为包名。
<强>示例代码:强>
import java.lang.reflect.Field; import android.content.Context; public class  ResourceUtil { private 才能static Context  sContext; public 才能static void  init (Context 上下文),{ ,,,if (context !=, null) ,,,,,sContext =,上下文; ,,} public 才能static int  getLayoutId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“layout",, sContext.getPackageName ()); ,,} public 才能static int  getStringId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“string", ,,,,,,,sContext.getPackageName ()); ,,} public 才能static int  getDrawableId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“drawable",, sContext.getPackageName ()); ,,} public 才能static int  getStyleId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“style", ,,,,,,,sContext.getPackageName ()); ,,} public 才能static int  getId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“id", ,,,,,,,sContext.getPackageName ()); ,,} public 才能static int  getColorId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“color",, sContext.getPackageName ()); ,,} public 才能static int  getDimenId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“dimen", ,,,,,,,sContext.getPackageName ()); ,,} public 才能static int  getAnimId (String paramString), { ,,,if (sContext ==, null) ,,,,,return 0; ,,,return sContext.getResources () .getIdentifier (paramString,“anim",, sContext.getPackageName ()); ,,}//才能,通过反射实现 public 才能static final  int [], getStyleableIntArray (String 名称),{ ,,,try { ,,,,,if (sContext ==, null) ,,,,,,,return 零; ,,,,,Field Field =, forname (sContext.getPackageName (), +,“r styleable"美元;).getDeclaredField(名称); ,,,,,int [], ret =, (int []), field.get(空); ,,,,,return 回收; ,,,},catch (Throwable t), { ,,,} ,,,return 零; ,,} public 才能static final  int getStyleableIntArrayIndex (String 名称),{ ,,,try { ,,,,,if (sContext ==, null) null null null null null null null null null nullandroid如何获取应用的唯一标识applicationId