使用getIdentifier()方法可以方便的获各应用包下的指定资源ID。

方式一

int indentify = getResources().getIdentifier(“com.test.demo:drawable/icon”,null,null);

第一个参数格式是:包名 + : +资源文件夹名 + / +资源名;是这种格式 然后其他的可以为null

方式二

intindentify= getResources().getIdentifier(“icon”, “drawable”, “com.test.demo”);

第一个参数为ID名,第二个为资源属性是ID或者是Drawable,第三个为包名。

示例代码:

import java.lang.reflect.Field;

import android.content.Context;

public class ResourceUtil {

private static Context sContext;

public static void init(Context context) {

if (context != null)

sContext = context;

}

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 name) {

try {

if (sContext == null)

return null;

Field field = Class.forName(sContext.getPackageName() + ".R$styleable").getDeclaredField(name);

int[] ret = (int[]) field.get(null);

return ret;

} catch (Throwable t) {

}

return null;

}

public static final int getStyleableIntArrayIndex(String name) {

try {

if (sContext == null)

return 0;

// use reflection to access the resource class

Field field = Class.forName(sContext.getPackageName() + ".R$styleable").getDeclaredField(name);

int ret = (Integer) field.get(null);

return ret;

} catch (Throwable t) {

}

return 0;

}

}

以上这篇android 获取APP的唯一标识applicationId的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持找一找教程网。

Android app 标签,android 获取APP的唯一标识applicationId的实例相关推荐

  1. 格式android id,android 获取APP的唯一标识applicationId的实例

    使用getIdentifier()方法可以方便的获各应用包下的指定资源ID. 方式一 int indentify = getResources().getIdentifier("com.te ...

  2. cocos2d-LUA逆向之修改客户端app,实时获取app解密后通信数据

    本文中,将以宝博.apk为例.基于前面 解密lua脚本与 解密lua资源,我们为实现修改客户端app,实时获取app解密后通信数据,应分析修改app端的lua脚本,然后按原app加密方式打包修改后的l ...

  3. 登录实现并获取到用户唯一标识

    正文: 功能:登录实现并获取到用户唯一标识 官方文档地址:可以先看完我的文章再看官方地址 实现步骤:1.调用微信API wx.login()得到code  2.把得到的code传给后端,在后端请求 h ...

  4. iOS获取设备的唯一标识的方法总结以及最好的方法

    各种获取设备唯一标识的方法介绍 一.UDID(Unique Device Identifier) UDID的全称是Unique Device Identifier,它就是苹果iOS设备的唯一识别码,它 ...

  5. iOS获取设备的唯一标识的方法

    各种获取设备唯一标识的方法介绍 一.UDID(Unique Device Identifier) UDID的全称是Unique Device Identifier,它就是苹果iOS设备的唯一识别码,它 ...

  6. uni-app获取设备的唯一标识

    uni-app根据不同手机平台获取设备的唯一标识,由于获取的方式是异步的,当前页面执行不一定能拿到.建议存缓存,其他页面可以用调用缓存的方式获取,不存在的话在执行一下方法获取,确保保证一定能获取的到. ...

  7. 【转载】设备唯一标识方法(Unique Identifier):如何在Windows系统上获取设备的唯一标识

    设备唯一标识方法(Unique Identifier):如何在Windows系统上获取设备的唯一标识 原文地址:http://www.vonwei.com/post/UniqueDeviceIDfor ...

  8. 【文件md5值查看方法详解】:如何获取文件的唯一标识?

    [文件md5值查看方法详解]:如何获取文件的唯一标识? 在日常工作中,我们经常需要检查文件是否被篡改或者验证文件的完整性.而文件的MD5值就是一个很好的选择,因为它可以作为文件的唯一标识.那么,如何获 ...

  9. 微信小程序例子——获取微信群唯一标识openGId

    1.效果展示 2.操作步骤 1)调用[显示当前页面的转发按钮]API 并设置参数withShareTicket为true wx.showShareMenu({       withShareTicke ...

最新文章

  1. ML之Xgboost:利用Xgboost模型对数据集(比马印第安人糖尿病)进行二分类预测(5年内是否患糖尿病)
  2. C# Winform程序中使用TeeChart实现简单的图表展示
  3. Oracle怎么算开始一个会话,oracle – 随机获取ORA-08177只有一个活动会话
  4. OnDraw与OnPaint有什么区别
  5. android 本地ip获取,【android】 获取本地ip方法
  6. 计算机系统-理论-内存分页机制/线性地址/虚拟内存
  7. 关于constraint 的disable和enable
  8. 代码轻视频系列#001
  9. SQlite数据库的C编程接口(七) 数据库锁定(Database Locking) ——《Using SQlite》读书笔记
  10. Redis更新数据的时候如何不重置过期时间
  11. Java实现阿里云短信验证码发送
  12. java ftp 上传失败,java ftp上传时,代码不报错,也上传不过去文件
  13. 算法系列之算法学习书籍以及资料推荐
  14. 敏捷开发系列学习总结(18)——Scrum Master的情景领导力模型
  15. Huilder连接Android逍遥模拟器
  16. html怎么设置下划线形状,科技常识:CSS如何给文字添加下划线样式
  17. 基于JavaSwing的雷电游戏(附论文)
  18. 编写shell脚本,输入一个数字n并计算1~n的和。要求:输入的数字不能小于1和空。
  19. 卸载windows服务,删除 windows 服务 delete windows service
  20. DFRobot柔性非接触式液位传感器的工作原理和应用领域

热门文章

  1. 手把手,教你用MaxCompute+OpenSearch搭建分布式搜索引擎
  2. 承担集团数万应用、研发人员日常工作,阿里持续交付平台的设计、迭代之道... 1
  3. 冲击中国超融合第一,浪潮的底气从何而来?
  4. 我同事狠心用 Python 3 ,刚开始就直接崩溃!你们试试......
  5. 这些常见的分布式存储系统,你是否都了解?
  6. 行,Python终于跌神坛了!程序员:活该!你敢来评论吗...
  7. 容器精华问答 | 虚拟机和容器的区别是什么?
  8. php最大并发数,php内置开发服务器的最大并发连接数
  9. django给mysql配主从_django中的mysql主从读写分离:一、配置mysql主从分离
  10. bootstraptable中responsehandle获取数据缺失_Python中的向量化字符串操作