获取Android各类系统相关信息的接口实现代码

【Android】获取手机的相关硬件信息 今天在QQ群里聊天,一个哥们在某宝买到了一个运行内存16G的手机,当时我就吓尿了,所以有了写个程序把这个手机的实际内存读出来的想法,于是就有了今天这篇博客. 所有的信息项如下图所示.(由于我的测试机没有插手机卡,所以有的信息会显示为空) 以下就是代码: package com.liu.chad.practicesqlite; import android.app.A 阅读详情
/**
   *  获取系统中所有安装包信息
   */
	public String getAllPackages(Context context)
	{
		String appList = "";
		List<PackageInfo> packages = context.getPackageManager().getInstalledPackages(0);
		for (PackageInfo packageInfo : packages) 
		{
			// 这里可以控制是否需要获取系统级别的package
			if ((packageInfo.applicationInfo.flags &  ApplicationInfo.FLAG_SYSTEM) == 0)
			{
				appList += packageInfo.applicationInfo.loadLabel(getPackageManager()).toString() + ",";
			}
		}
		
		return appList.substring(0, appList.length()-1);
	}
	
	/**
	   *  获取系统内存信息
	   */
	public String getSysMemoryInfo(Context context)
	{

		long freeMem = 0;
		long totalMem = 0;
		
		ActivityManager activityManager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
		MemoryInfo memoryInfo = new MemoryInfo();
		activityManager.getMemoryInfo(memoryInfo);
		
		freeMem = memoryInfo.availMem/1024/1024;
		
		//读取指定文件信息
		 String path = "/proc/meminfo";
	        String content = null;
	        BufferedReader br = null;
	        try {
	            br = new BufferedReader(new FileReader(path), 8);
	            String line;
	            if ((line = br.readLine()) != null) {
	                content = line;
	            }
	        } catch (FileNotFoundException e) {
	            e.printStackTrace();
	        } catch (IOException e) {
	            e.printStackTrace();
	        } finally {
	            if (br != null) {
	                try {
	                    br.close();
	                } catch (IOException e) {
	                    e.printStackTrace();
	                }
	            }
	        }
	        // beginIndex
	        int begin = content.indexOf(':');
	        // endIndex
	        int end = content.indexOf('k');
	        // 截取字符串信息

		content = content.substring(begin + 1, end).trim();
	    totalMem = Integer.parseInt(content)/1024;
	    

		
		return freeMem+" "+totalMem;
	}
	
	
	/**
	 * 获取CPU信息
	 */
    private String getCpuInfo() {  
             String str1 = "/proc/cpuinfo";  
            String str2 = "";  
              String cpuInfo="";  //1-cpu型号  //2-cpu频率  
              String[] arrayOfString;  
              try {  
                 FileReader fr = new FileReader(str1);  
                 BufferedReader localBufferedReader = new BufferedReader(fr, 8192);  
                 str2 = localBufferedReader.readLine();  
                 arrayOfString = str2.split("\\s+");  
                 for (int i = 2; i < arrayOfString.length; i++) {  
                	 cpuInfo =  arrayOfString[i] + "  ";  
                 }  
                 str2 = localBufferedReader.readLine();  
                arrayOfString = str2.split("\\s+");  
                cpuInfo =cpuInfo + arrayOfString[2];  
                 localBufferedReader.close();  
             } catch (IOException e) {  
             }  
             return cpuInfo;  
         }  
    
	/**
	 * 获取MAC地址 
	 */
       private String getMacAddress(){  
                String result = "";  
    	        WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);  
                 WifiInfo wifiInfo = wifiManager.getConnectionInfo();  
    	         result = wifiInfo.getMacAddress();  
    	         // Log.i(TAG, "macAdd:" + result);  
    	          return result;  
    	    }  
       
   	/**
   	 * 获取其他手机信息 
   	 */
       private String getInfo() {  
    	          TelephonyManager mTm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);  
    	           String imei = mTm.getDeviceId();  
    	            String imsi = mTm.getSubscriberId();  
    	           String mtype = android.os.Build.MODEL; // 手机型号  
    	             String numer = mTm.getLine1Number(); // 手机号码
    	             
    	             return imei + " " + imsi + " " + mtype + " " + numer;
    	        }  
       
      	/**
      	 * 获取屏幕的分辨率
      	 */
       private String getWeithAndHeight(){  
    	           //这种方式在service中无法使用,  
    	          DisplayMetrics dm = new DisplayMetrics();  
    	          getWindowManager().getDefaultDisplay().getMetrics(dm);  
    	          int width = dm.widthPixels;              //宽  
    	          int height = dm.heightPixels;           //高  
    	      
    	          //在service中也能得到高和宽  
    	         WindowManager mWindowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);  
    	          int width0 = mWindowManager.getDefaultDisplay().getWidth();  
    	          int height0 = mWindowManager.getDefaultDisplay().getHeight();  
    	          
    	          return ""+width +" "+height + " " +width0 + " " +height0;
    	        }  



Android 15 获取网络切片信息的标准接口 Android 提供通用的标准接口获取网络切片的信息(sliceInfo),公开的API是,在PDN建立 setup_data_call 中是不包含这种公开信息的。 阅读详情

相关推荐

android获取到电信的手机号码,Android基站信息获取以及Sim卡相关信息获取

概述:本篇主要介绍Android获取基站信息的方式,除此之外,还有SIM卡相关字段获取,先介绍一些缩写的概念,后续更新代码的写法。前言:之前有碰到一个需求,需要获取SIM卡的相关属性:IMSI号、SIM卡序号、通话号码、SIM运营商国家代码、运营商名称、网络运营商等参数,然后是基站信息:mcc#mnc#lac#cellid#rss。也按照网上的方法踩过一些坑,这边就记录一下自己可行的方案。基站信息...

weixin_28999139的博客 2414

android 调用系统的接口

显示网页: 1. Uri uri = Uri.parse(""); 2. Intent it = new Intent(Intent.ACTION_VIEWuri); 3. startActivity(it); 显示地图: 1. Uri uri = Uri.parse("geo:38.-77."); 2. Intent it = new Intent(Intent.Acti

哈姆西克2046 623

安卓获取设备及系统信息小结

安卓开发过程中,免不了要获取一些系统信息,常用的大致就是从 Build、PackageInfo、ApplicationInfo、TelephonyManager 中拿,这里将这些知识做一个小结,具体使用后面再开个辅助类博客介绍吧! 下面看具体内容: Build Build 类可以用来获取Android系统的相关信息。 字段 含义 示例 用法 Build.BRAND 产品品牌 Meizu 通过这个字段可以获取到对用户有意义的手机厂商名称,例如Xiaomi,Meizu,Huawei等。 Bu

silencefly的博客 1854

PackageManager安装包管理

常用代码: List packageInfoList = getPackageManager().getInstalledPackages(0); //返回已安装的包信息列表  packageInfo.applicationInfo.flags&ApplicationInfo.FLAG_SYSTEM) == 0;//判断是否为非系统应用 用获得的属性信息,保存到APP中。

HDHunter的专栏 1090

Qt for Android获取wifi信息

在开发Qt for Android应用程序时,往往会需要用到获取Wifi相关信息的需求,比如要获取wifi名称、wifi信号强度等.针对该需求,本文以一个简单的Demo介绍如何通过调用android接口获取相关信息。

SuperYang_的博客 2099

安卓应用开发学习:获取导航卫星信息

​ 我昨天写了《安卓应用开发学习:获取经纬度及地理位置描述信息》日志,今天再接再厉,记录一下跟着《Android App 开发进阶与项目实战》一书,实现获取导航卫星信息,并在手机上显示的功能的情况。

bahamutj的博客 2051

分享好东西:android抓包工具fiddler使用介绍 抓取 手机APP 中资源。

正题:这里介绍 抓包的关键,Fiddler  ,Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯。     我们就是用这款软件抓取 ,我们手机app 访问的 资源路径 的。     下面 我们拿实例 来演示下,怎么用fiddler 抓取数据。(以某拍为例吧)。      环境: win7 和 G620S-UL00(华

hjysmi的专栏 3720

Android 接口方法详解

在 Android 开发中,接口(Interface)是一种定义了一组方法的抽象类型。接口允许类实现这些方法,并通过实现接口来提供特定功能。本文将详细介绍在 Android 中实现接口方法的步骤和示例代码。通过以上步骤,我们可以在 Android 中实现接口方法。首先,我们定义一个接口,然后创建一个类来实现该接口,并提供接口中方法的具体实现。最后,我们可以使用接口实现类来调用接口中的方法。在上面的示例中,我们定义了一个名为。在上面的示例中,我们创建了一个名为。在上面的示例中,我们创建了一个名为。

2301_79325339的博客 937

linux 系统接口代码,获取Android各类系统相关信息的接口实现代码

获取Android各类系统相关信息的接口实现代码/*** 获取系统中所有安装包信息*/public String getAllPackages(Context context){String appList = "";List packages = context.getPackageManager().getInstalledPackages(0);for (PackageInfo packa...

weixin_31205797的博客 163

实现Android接口的步骤与示例代码

在上面的示例代码中,我们定义了一个名为"OnClickListener"的接口,并创建了一个名为"Button"的类来实现它。然后,在"Main"类中创建了一个"Button"的实例,并调用了"onClick"方法。我们可以创建一个"Button"的实例,并将其作为"OnClickListener"接口的类型来使用。首先,我们需要定义一个接口,它包含我们希望实现的操作。这样,当我们调用"button.onClick()"时,实际上会执行"Button"类中实现的"onClick"方法。

ByteLegend的博客 605

获取Android系统相关信息的接口实现代码

通过上述方法,我们可以方便地获取设备的型号、操作系统版本、屏幕分辨率和设备唯一标识符等信息。在Android开发中,我们经常需要获取设备的各类系统相关信息,比如设备型号、操作系统版本、屏幕分辨率等。本文将介绍如何通过Android提供的API来获取这些信息,并提供相应的代码示例。设备唯一标识符可以用来标识不同的Android设备。操作系统版本可以告诉我们当前设备所运行的Android版本。设备型号可以用来标识不同的Android设备。需要注意的是,获取设备唯一标识符需要获取相应的权限,例如。

HackWhisper的博客 207

android代码获取deviceid,获取安卓系统的设备id用getDeviceId()函数

来源:网络|2012-12-18|(有12829人读过)贴段具体例子代码,用来说明,安卓系统下,如何获取设备id的一段小例子供大家参考:在计算机上,我们习惯用MAC地址来标志一台计算机。在Android设备上,可以用IMIE或者AndroidID来标志一个设备。看一下Android上怎样获取这样的信息。一个是TelephonyManager的getDeviceId,另外一个是Settin...

weixin_39968436的博客 4472

基于FPGA的ov5640摄像头简易图像采集装置详解

本文介绍一种基于FPGA的,通过流模式DDR实现OV5640摄像头数据采集并显示的方法。

qq_42230252的博客 1万+

android中获取屏幕相关信息

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666) 在实际应用中经常要获取屏幕的相关信息,比如高度、宽度、密度以及dp/dip和px之间的转换等等,下面这个示例简单介绍一下,代码如下: GetSreenInfoActivity: package com....

孤云博客 3394

CXL3.0 CDAT(Coherent Device Attributes Table)

在说明CDAT之前,先讲一下CXL中的DOE类型:CXL协议里定义了两种DOE的类型,一种是Compliance就是合规性测试的内容,还有一种就是CDAT(一致性属性表)Memory_Info_Valid是CXL设备的内存配置完成标志,位于DVSEC(Designated Vendor-Specific Extended Capability)的CXL Range X Size Low寄存器中(X为1或2)。

Summer的博客 1435

centos7安装db2 version11.1

centos7安装db2 version11.1

AKA石头 1062

android获取手机和系统版本等信息的代码,Android获取手机的版本号等信息的代码...

本文实例分享了Android获取手机系统版本等信息的方法,供大家参考,具体内容如下:第一种代码:String phoneInfo = "Product: " + android.os.Build.PRODUCT;phoneInfo += ", CPU_ABI: " + android.os.Build.CPU_ABI;phoneInfo += ", TAGS: " + android.os.Bui...

weixin_35618933的博客 1666

【keras】走近VGG16卷积神经网络

        VGG16是一个16层的卷积神经网络模型,输入数据的维度为224*224*3,即长宽均为224像素的RGB彩色图片,VGG16模型的权重由ImageNet训练而来。由于其具有简单实用的优点,因此,在图像分类和目标检测任务中得到了较为广泛的应用。 1.卷积神经网络的基本概念 1.1卷积         简单的将其理解为一种数学运算,具体的计算过程如下图所示:       ...

XYZ 1万+

Android开发获取设备硬件相关信息

在安卓开发过程中,有时需要获取设备硬件信息以及网络信息,包括设备型号、CPU信息、RAM以及ROM信息、摄像头信息、分辨率、运营商信息等。网上逐条搜索相关方法比较繁琐,因此本文总结了相关信息的具体获取方法。

oSawatari的博客 6613

从Demo到产品:基于ADAU1452的ANC方案,硬件选型、性能优化与避坑指南

本文详细解析了基于ADAU1452的主动降噪(ANC)方案从Demo到产品的实现路径,涵盖硬件选型、性能优化与实战避坑指南。重点探讨了ADAU1452与ADAU1466的性能差异、编解码器选型策略,以及MFXLMS算法优化技巧,为工程师提供从理论验证到量产落地的系统级解决方案。

weixin_30542079的博客 451

PCL学习笔记(四)——点云曲面重建

文章目录一、凸包算法二、 单纯的点云数据固然很好,但仅仅是点的话仍是不够的,因为这不利于我们后续对实体对象的渲染与各种应用,如计算实体的表面积、体积等等,所以这就需要我们对实体进行点云的曲面重建。 一、凸包算法 在计算机图形学中,凸包是指在任意维空间中包含某一有限点集P的最小凸集,它由凸包顶点构成,在二维上其表现形式为一个凸多边形,而在三维上则表现为一个凸多面体。在二维层面上来讲,最常用的凸包算法有Graham扫描法和Jarvis卷包裹法,但前者并不适用于三维层面,后者倒是可以扩展到三维。除此之外,在

dayuhaitang1的博客 6912

Android系统信息获取 之三:CPU信息获取

(转载)http://blog.youkuaiyun.com/netwalk/article/details/9793501 Android系统的CPU信息涉及到两个文件:/proc/cpuinfo和/proc/stat  通过读取文件/proc/cpuinfo,来获取系统CPU的类型等多种信息, 通过读取/proc/stat 所有CPU活动的信息来计算CPU使用率。

u010746364的博客 7398

【ComfyUI】Flux 图像扩展

本文介绍了一个基于Flux扩图技术的ComfyUI工作流,能够智能扩展图像尺寸并保持内容连贯性。该流程通过扩散模型与条件编码的结合,对图像边缘进行语义填充生成,适用于艺术创作、海报设计等场景。工作流包含图像加载、外扩填充、文本编码、扩散采样等核心节点,采用Flux1-fill-dev等专业模型确保生成质量。演示效果显示,系统能自然延伸原图内容,保持风格统一。该技术可广泛应用于插画扩展、摄影增强、游戏场景构建等领域,显著提升创意工作效率。

Mr数据杨 928

Android系统下使用c语言获取相关系统信息

首先教你如何在pc机上使用命令形式查看Android系统设备的相关信息 1.使用数据线连接Android系统设备 2.开始调试模式 3.打开pc机的命令行工具,例如windows的cmd 4.找到你Android SDK所在的目录下的adb工具,一般存放在SDK根目录的platform-tools文件夹下 5.我们使用Android sdk中的adb.exe查看相关Andro...

sailleed的知识存储库 2724

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Android 获取设备相关信息

在做某些项目时,需要上传必要的设备信息给服务器用于风控在此做一下总结。主要抓取设备id 操作系统版本,设备型号,IMSI,路由器,mac地址,设备mac地址,安卓id,经度,纬度,ip地址....

Android 领域开发程序员,希望通过写博客的方式不断的总结提升自己,大家共同进步哦! 933

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: Java内存泄露的理解与解决
下一篇: 《Head First 设计模式》读书笔记之1:设计模式入门(策略模式)
NewJerryj
博客等级 码龄19年 196粉丝 115原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值