android如何获取应用的唯一标识applicationId

  介绍

小编给大家分享一下安卓如何获取应用的唯一标识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   null

android如何获取应用的唯一标识applicationId