精华内容
下载资源
问答
  • Delphi D10.X安卓APP开发中获取硬件信息及手机号,完整代码,安卓5.1到10可使用。请查看压缩包里说明,及https://blog.csdn.net/tanqth/article/details/104779089文章。
  • 主要介绍了Android获取手机本机号码的实现方法的相关资料,希望通过本文大家能够实现这样的方法,需要的朋友可以参考下
  • 有什么办法能够获取本机的手机号码呢,GetLine1Number 方法试过不行,全天在线 ,等答案
  • 下面我从安卓开发的角度,简单写一下如何获取手机设备信息和手机号码 准备条件:一部安卓手机、手机SIM卡确保插入手机里、eclipse ADT和Android-sdk开发环境 第一步:新建一个android工程(JinshanTest)...

    下面我从安卓开发的角度,简单写一下如何获取手机设备信息和手机号码


    准备条件:一部安卓手机、手机SIM卡确保插入手机里、eclipse ADT和Android-sdk开发环境


    第一步:新建一个android工程(JinshanTest),



    并需要在工程的AndroidManifest.xml文件中,添加权限

    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>


    图例:




    第二步:新建一个工具类PhoneInfo.Java

    [java]  view plain  copy
     print ?
    1. package com.jinshan.test;  
    2.   
    3.   
    4. import android.content.Context;  
    5. import android.telephony.TelephonyManager;  
    6.   
    7. /** 
    8.  * 读取手机设备信息测试代码 
    9.  * http://www.souapp.com 搜应用网  
    10.  * song2c@163.com 
    11.  * 宋立波 
    12.  */  
    13. public class PhoneInfo {  
    14.   
    15.     private TelephonyManager telephonyManager;  
    16.     /** 
    17.      * 国际移动用户识别码 
    18.      */  
    19.     private String IMSI;  
    20.     private Context cxt;  
    21.     public PhoneInfo(Context context) {  
    22.         cxt=context;  
    23.         telephonyManager = (TelephonyManager) context  
    24.                 .getSystemService(Context.TELEPHONY_SERVICE);  
    25.     }  
    26.   
    27.     /** 
    28.      * 获取电话号码 
    29.      */  
    30.     public String getNativePhoneNumber() {  
    31.         String NativePhoneNumber=null;  
    32.         NativePhoneNumber=telephonyManager.getLine1Number();  
    33.         return NativePhoneNumber;  
    34.     }  
    35.   
    36.     /** 
    37.      * 获取手机服务商信息 
    38.      */  
    39.     public String getProvidersName() {  
    40.         String ProvidersName = "N/A";  
    41.         try{  
    42.         IMSI = telephonyManager.getSubscriberId();  
    43.         // IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信。  
    44.         System.out.println(IMSI);  
    45.         if (IMSI.startsWith("46000") || IMSI.startsWith("46002")) {  
    46.             ProvidersName = "中国移动";  
    47.         } else if (IMSI.startsWith("46001")) {  
    48.             ProvidersName = "中国联通";  
    49.         } else if (IMSI.startsWith("46003")) {  
    50.             ProvidersName = "中国电信";  
    51.         }  
    52.         }catch(Exception e){  
    53.             e.printStackTrace();  
    54.         }  
    55.         return ProvidersName;  
    56.     }  
    57.       
    58.     public String  getPhoneInfo(){  
    59.          TelephonyManager tm = (TelephonyManager)cxt.getSystemService(Context.TELEPHONY_SERVICE);  
    60.             StringBuilder sb = new StringBuilder();  
    61.   
    62.             sb.append("\nDeviceId(IMEI) = " + tm.getDeviceId());  
    63.             sb.append("\nDeviceSoftwareVersion = " + tm.getDeviceSoftwareVersion());  
    64.             sb.append("\nLine1Number = " + tm.getLine1Number());  
    65.             sb.append("\nNetworkCountryIso = " + tm.getNetworkCountryIso());  
    66.             sb.append("\nNetworkOperator = " + tm.getNetworkOperator());  
    67.             sb.append("\nNetworkOperatorName = " + tm.getNetworkOperatorName());  
    68.             sb.append("\nNetworkType = " + tm.getNetworkType());  
    69.             sb.append("\nPhoneType = " + tm.getPhoneType());  
    70.             sb.append("\nSimCountryIso = " + tm.getSimCountryIso());  
    71.             sb.append("\nSimOperator = " + tm.getSimOperator());  
    72.             sb.append("\nSimOperatorName = " + tm.getSimOperatorName());  
    73.             sb.append("\nSimSerialNumber = " + tm.getSimSerialNumber());  
    74.             sb.append("\nSimState = " + tm.getSimState());  
    75.             sb.append("\nSubscriberId(IMSI) = " + tm.getSubscriberId());  
    76.             sb.append("\nVoiceMailNumber = " + tm.getVoiceMailNumber());  
    77.            return  sb.toString();  
    78.     }  
    79. }  


    第三步:在启动的Activity,JinshanTestActivity中添加,调用代码:

    [java]  view plain  copy
     print ?
    1. package com.jinshan.test;  
    2.   
    3. import android.app.Activity;  
    4. import android.os.Bundle;  
    5.   
    6. public class JinshanTestActivity extends Activity {  
    7.     /** Called when the activity is first created. */  
    8.     @Override  
    9.     public void onCreate(Bundle savedInstanceState) {  
    10.         super.onCreate(savedInstanceState);  
    11.         setContentView(R.layout.main);  
    12.           
    13.         PhoneInfo siminfo = new PhoneInfo(JinshanTestActivity.this);  
    14.         System.out.println("getProvidersName:"+siminfo.getProvidersName());  
    15.         System.out.println("getNativePhoneNumber:"+siminfo.getNativePhoneNumber());  
    16.         System.out.println("------------------------");  
    17.         System.out.println("getPhoneInfo:"+siminfo.getPhoneInfo());  
    18.     }  
    19.       
    20.       
    21.       
    22. }  

    第四步,把手机使用USB线,连接到电脑上,确保是连通性,开始运行工程




    最后,我们看LOGCAT日志,结果如下:

    ------------------------------------------------------------

    04-01 16:20:57.105: I/System.out(952): 460003121934674
    04-01 16:20:57.105: I/System.out(952): getProvidersName:中国移动
    04-01 16:20:57.115: I/System.out(952): getNativePhoneNumber:136XXXXXXX
    04-01 16:20:57.115: I/System.out(952): ------------------------
    04-01 16:20:57.145: I/System.out(952): getPhoneInfo:
    04-01 16:20:57.145: I/System.out(952): DeviceId(IMEI) = 352XXXXXXXX61328
    04-01 16:20:57.145: I/System.out(952): DeviceSoftwareVersion = 01
    04-01 16:20:57.145: I/System.out(952): Line1Number = 136XXXXXXX
    04-01 16:20:57.145: I/System.out(952): NetworkCountryIso = cn
    04-01 16:20:57.145: I/System.out(952): NetworkOperator = 46000
    04-01 16:20:57.145: I/System.out(952): NetworkOperatorName = 中国移动
    04-01 16:20:57.145: I/System.out(952): NetworkType = 2
    04-01 16:20:57.145: I/System.out(952): PhoneType = 1
    04-01 16:20:57.145: I/System.out(952): SimCountryIso = cn
    04-01 16:20:57.145: I/System.out(952): SimOperator = 46000
    04-01 16:20:57.145: I/System.out(952): SimOperatorName = CMCC
    04-01 16:20:57.145: I/System.out(952): SimSerialNumber = 898xxxxxx90108
    04-01 16:20:57.145: I/System.out(952): SimState = 5
    04-01 16:20:57.145: I/System.out(952): SubscriberId(IMSI) = 46000xxxxxxxx4674

    那么我们来解释一下上面的信息具体代表啥意思。


    getNativePhoneNumber 获取的手机号

    DeviceId(IMEI)手机  国际移动用户识别码

    NetworkOperator  移动运营商编号

    NetworkOperatorName  移动运营商名称

    SimSerialNumber  SimOperator  SimCountryIso  SimSerialNumber  SubscriberId(IMSI)   关于手机SIM卡的一些详细信息


    其实代码中没有写 获取System.ANDROID_ID这个操作,因为很多手机设备获取不到andnroid_id


    当然了,我们今天主要讲述<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 光使用这个权限我们可以获得的手机设备信息和手机号

    如果想获得WIFI,蓝牙,GPS,读写SDCARD更多的信息,就需要添加其它的权限。


    此外,本次测试我拿自己的手机SIM卡测试是可以获取到手机号码的,当然了有些手机号码是获取不到的,这里也给大家罗列了原因,


    手机号码不是所有的都能获取。只是有一部分可以拿到。

    这个是由于移动运营商没有把手机号码的数据写入到sim卡中.SIM卡只有唯一的编号,供网络与设备识别那就是IMSI号码,手机的信号也可以说是通过这个号码在网络中传递的,并不是手机号码。试想,你的SIM丢失后,补办一张新的会换号码吗?是不会的.就是因为在你的手机号码对应的IMSI号 在移动运营商中被修改成新SIM卡的IMSI号码。
      那么手机号为什么有的就能显示呢?
      这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值。不赋值自然为空。
      对于移动的用户,手机号码(MDN)保存在运营商的服务器中,而不是保存在SIM卡里。SIM卡只保留了IMSI和一些验证信息。手机每次入网注册的时候,都会以短信的形式将IMSI及验证信息上传到运营商的服务器,服务器在完成注册动作之后,会以短信的形式将注册的结果下发到手机里。下发的内容会因条件不同而不同。
      如果服务器在下发的短信中,不包含手机的号码,手机是无法取得电话号码。如果短信中包含了号码,手机才会将其缓存,以备他用.此外,对于其他运行商的SIM卡或者UIM卡,MDN有可能保存在UIM卡中。100%能够取得本机号码不太可能。
      移动神州行,联通的卡是可以取到的.动感地带的取不到.别的卡还没有试过.
      能够读取SIM卡号的话应该有前提.那就是SIM卡已经写入了本机号码,不然是无法读取的。

    http://bbs.gfan.com/android-323295-1-1.html


    8
    展开全文
  • Android获取手机号码

    万次阅读 2019-04-04 11:24:06
    今天来说一下Android系统中怎么获取手机号 一、SIM卡存储的数据可分为四类,它们分别是: 第一类是固定存放的数据。这类数据在移动电话机被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMSI)、鉴权密钥...

    今天来说一下Android系统中怎么获取手机号

     

    一、SIM卡存储的数据可分为四类,它们分别是:


    第一类是固定存放的数据。这类数据在移动电话机被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMSI)、鉴权密钥(KI)、鉴权和加密算法等等。


    第二类是暂时存放的有关网络的数据。如位置区域识别码(LAI)、移动用户暂时识别码(TMSI)、禁止接入的公共电话网代码等。


    第三类是相关的业务代码,如个人识别码(PIN)、解锁码(PUK)、计费费率等。


    第四类是电话号码簿,是手机用户随时输入的电话号码。用户全部资料几乎都存储在SIM卡内,因此SIM卡又称为用户资料识别卡。


    IMSI是一个唯一的数字, 标识了GSM和UMTS 网络里的唯一一个用户. 它存储 在手机的SIM卡里,它会通过手机发送到网络上. IMSI 与 SIM唯一对应.


    IMEI也是一串唯一的数字, 标识了 GSM 和 UMTS网络里的唯一一个手机.它通常被打印在手机里电池下面的那一面,拨 *#06# 也能看到它. IMEI 与设备唯一对应.


    我们要注意以下几点:


    1.IMEI不存在于SIM卡中,它是手机本身的串号。 


    2.通常我们所说的手机号也不存在于SIM卡中,虽然SIM卡中有一个专门存储SIM卡本身号码的地方,但是此号码是通过手工设定的,而且是可以更改的。   SIM卡的识别通常使用IMSI号,这个对于SIM卡是唯一的。


    3.使用SimGetRecordInfo之类的函数获得SIM卡的IMSI号码能否成功依赖于设备制造商是否实现了此函数,据我所知在DOPOD的机器上是可以获得,但是在联想的机器上却不行,其他机器没有。


    4.获得IMEI以及IMSI可以通过RIL或者TAPI中的LINE操作的函数获得。


    二、下面给出获取手机本机号码及Sim卡状态的代码:

    TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);       
    String deviceid = tm.getDeviceId();
    String tel = tm.getLine1Number();
    String  imei = tm.getSimSerialNumber();     
    String imsi = tm.getSubscriberId();
    String simState = tm.getSimState();


    三、添加权限:

    <uses-permission android:name="android.permission.READ_PHONE_STATE" />


    注意:手机号码不是所有的都能获取。只是有一部分可以拿到。这个是由于移动运营商没有把手机号码的数据写入到sim卡中。这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值。不赋值自然为空。这就是为什么很多人得不到本机号码的原因。


    四、名词解释:


    IMEI:(International Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备辨识码,是由15位数字组成的"电子串号",它与每台手机一一对应,而且该码是全世界唯一的。每一只手机在组装完成后都将被赋予一个全球唯一的一组号码,这个号码从生产到交付使用都将被制造生产的厂商所记录。


    IMSI:(InternationalMobileSubscriberIdentificationNumber)国际移动用户识别码,是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。其总长度不超过15位,同样使用0~9的数字。其中MCC是移动用户所属国家代号,占3位数字,中国的MCC规定为460;MNC是移动网号码,最多由两位数字组成,用于识别移动用户所归属的移动通信网;MSIN是移动用户识别码,用以识别某一移动通信网中的移动用户

    如有需要可以加我Q群【308742428】大家一起讨论技术。

    后面会不定时为大家更新文章,敬请期待。

    喜欢的朋友可以关注下。

    展开全文
  • 本示例获得手机型号,系统版本,App版本号等信息,具体实现如下,感兴趣的朋友可以参考下哈
  • 安卓获取用户手机号码、IMES方法

    千次阅读 2020-06-10 12:21:26
    uses-permission android:name="android.permission.READ_PHONE_STATE"/> 其次, private static String getIMIEStatus(Context context) { TelephonyManager tm = (TelephonyManager) context ....

    首先,AndroidManifest.xml 中添加一个权限:<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

     

    其次,

    private static String getIMIEStatus(Context context) {
        TelephonyManager tm = (TelephonyManager) context
                .getSystemService(Context.TELEPHONY_SERVICE);
        String deviceId = tm.getDeviceId();
        return deviceId;
    }
    展开全文
  • Android获取手机APP安装列表,系统和非系统APP
  • 手机端抓包工具,可以抓取指定应用的网络请求,也可以抓取手机全部请求。偶尔开发时需要查看服务端返回数据是否异常是可以使用该APP抓包
  • 主要介绍了Android编程获取手机屏幕分辨率大小的方法,涉及Android基于getWindowManager()方法获取手机屏幕相关信息的使用技巧,需要的朋友可以参考下
  • 获取手机正在运行的app,以及当前前台正在运行的app(兼容android6.0)
  • SIM卡运营商获取手机号码功能暂时无法实现.zip
  • 原理:安卓手机APP,通过APP获取手机短信,然后提交到指定的api接口,并显示返回结果,支持php、java等接口。支持获取通知类、验证码短信
  • 主要介绍了Android手机App安全漏洞整理(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 使用delphi开发安卓APP时,获取手机的硬件设备及手机信息。

    Demo与代码已上传到CSDN下载。
    这里简单说一下代码内容,完整代码请自行下载,不清楚的欢迎留言交流。

    前言

    需要的权限

    需要以下权限:
    需要的权限

    • 在高版本的安卓系统中,要想获取到设备信息,需要动态申请权限,在演示代码里已包括,代码可同时在高低安卓版本中使用。

    代码说明

    获取信息主要是两个部分:

    TJBuild

    这里面包括了较多的设备信息

    • BOARD 主板
    • BOOTLOADER 系统启动程序版本号
    • BRAND 系统定制商
    • CPU_ABI cpu指令集
    • CPU_ABI2 cpu指令集2
    • DEVICE 设备驱动名称
    • DISPLAY 显示屏参数,设备显示器的版本包(在系统设置中显示为版本号)和ID一样
    • FINGERPRINT 识别码(这个码不是唯一码)通常是一串参数的组合,没太大意义
    • HARDWARE 硬件名称
    • HOST设备主机地址
    • MANUFACTURER 硬件制造商
    • MODEL 版本即最终用户可见的名称
    • PRODUCT 整个产品的名称
    • RADIO 无线电固件版本:使用**getRadioVersion()**代替。
    • SERIAL 硬件序列号
    • TAGS 描述build的标签,如未签名,debug等等。
    • TIME 系统编译时间
    • TYPE 编译的类型
    • USER 固定的,没意义

    示例代码(部分):

        // 手机型号(MI XXX)
        Memo1.Lines.Add('手机型号(MI XXX):' + JStringToString(TJBuild.JavaClass.MODEL));
        // 设备基板名称
        Memo1.Lines.Add('设备基板名称:' + JStringToString(TJBuild.JavaClass.BOARD));
        // 系统启动程序版本
        Memo1.Lines.Add('系统启动程序版本:' + JStringToString
          (TJBuild.JavaClass.BOOTLOADER));
        // 系统定制商
        Memo1.Lines.Add('设备品牌:' + JStringToString(TJBuild.JavaClass.BRAND));
        // cpu指令集
        Memo1.Lines.Add('cpu指令集:' + JStringToString(TJBuild.JavaClass.CPU_ABI));
        // cpu指令集2
        Memo1.Lines.Add('cpu指令集2:' + JStringToString(TJBuild.JavaClass.CPU_ABI2));
        // 设备驱动名称
        Memo1.Lines.Add('设备驱动名称:' + JStringToString(TJBuild.JavaClass.DEVICE));
        // 设备显示的版本包(在系统设置中显示为版本号)和ID一样
        Memo1.Lines.Add('显示屏参数:' + JStringToString(TJBuild.JavaClass.DISPLAY));
        // 设备制造商
        Memo1.Lines.Add('设备制造商:' + JStringToString(TJBuild.JavaClass.MANUFACTURER));
        // 无线电固件版本
        Memo1.Lines.Add('无线电固件版本:' + JStringToString
          (TJBuild.JavaClass.getRadioVersion));
        // 设备的唯一标识。由设备的多个信息拼接合成。 注意,这个码不是唯一 码
        Memo1.Lines.Add('硬件识别码(这个码不是唯一 码):' +
          JStringToString(TJBuild.JavaClass.FINGERPRINT));
    

    TelephonyManager

    这部分包括了手机信息如卡槽信息、手机卡信息、运营商信息、网络信息等等,演示里也只列了一部分主要内容。

    示例代码(部分):

        TelephonyServiceNative := TAndroidHelper.Context.getSystemService
          (TJContext.JavaClass.TELEPHONY_SERVICE);
        if Assigned(TelephonyServiceNative) then
        begin
          Memo1.Lines.Add('======================');
          try
            TelephonyManager := TJTelephonyManager.Wrap
              ((TelephonyServiceNative as ILocalObject).GetObjectID);
            // 手机卡槽数
            vPhoneCount := TelephonyManager.getPhoneCount;
            Memo1.Lines.Add('卡槽数:' + vPhoneCount.ToString);
            // 插卡数
            vSubscriptionManager := TJSubscriptionManager.JavaClass.from
              (TAndroidHelper.Context);
            vSubManagerCoun :=
              vSubscriptionManager.getActiveSubscriptionInfoCount();
            Memo1.Lines.Add('插卡数:' + vSubManagerCoun.ToString);
    
            // 设备ID
            Memo1.Lines.Add('DeviceId_1:' + JStringToString
              (TelephonyManager.getDeviceId(0)));
            if vPhoneCount > 1 then
              Memo1.Lines.Add('DeviceId_2:' +
                JStringToString(TelephonyManager.getDeviceId(1)));
            // 硬件Imei
            Memo1.Lines.Add('Imei_1:' + JStringToString
              (TelephonyManager.getImei(0)));
            if vPhoneCount > 1 then
              Memo1.Lines.Add('Imei_2:' + JStringToString
                (TelephonyManager.getImei(1)));
            // 硬件Meid
            try
              Memo1.Lines.Add('Meid_1:' + JStringToString
                (TelephonyManager.getMeid(0)));
            except
              on E: Exception do
            end;
    
            try
              if vPhoneCount > 1 then
                Memo1.Lines.Add('Meid_2:' + JStringToString
                  (TelephonyManager.getMeid(1)));
            except
              on E: Exception do
            end;
    
            // SubscriberId
            Memo1.Lines.Add('SubscriberId(IMSI号):' +
              JStringToString(TelephonyManager.getSubscriberId));
            // Line1Number
            Memo1.Lines.Add('Line1Number:' + JStringToString
              (TelephonyManager.getLine1Number));
            //分别取各卡槽信息
            for I := 0 to vSubManagerCoun-1 do
            begin
            vSubscriptionInfo:=vSubscriptionManager.getActiveSubscriptionInfo(I+1);
            Memo1.Lines.Add(I.ToString+'手机号: ' + JStringToString
              (vSubscriptionInfo.getNumber));
            Memo1.Lines.Add(I.ToString+'使用卡槽: ' + (vSubscriptionInfo.getSimSlotIndex+1).ToString);
            Memo1.Lines.Add(I.ToString+'运营商: ' + JCharSequenceToStr
              (vSubscriptionInfo.getCarrierName));
            end;
    
          except
          end;
        end;
    

    获取信息展示

    在这里插入图片描述
    在这里插入图片描述

    相关文章导读

    Delphi D10.3 LayoutsPro 控件简介 -避免输入焦点被虚拟键盘遮挡
    Delphi安卓APP获取手机信息》源码下载地址
    点击上面标题后直接查看


    欢迎光顾本人小店:(https://shop63778938.taobao.com/)
    小店也提供delphi方面其他技术支持、定制开发。

    现在就进店看看

    大家有什么不清楚的,可以给我留言讨论
    以上信息对您有用的话请点赞收藏,就下面这行

    展开全文
  • 今天小编就为大家分享一篇关于Android手机获取Mac地址的几种方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
  • 主要为大家详细介绍了Android手机获取Mac地址的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • [android-003]android app获取手机短信

    千次阅读 2018-07-25 19:36:33
    uses-permission android:name="android.permission.READ_SMS"/&gt; &lt;uses-permission android:name="android.permission.WRITE_SMS"/&gt; 2.在需要读取短信的函数里配置权限...
  • 该资源为安卓开发中获取硬件信息,App信息等做的一个Demo项目,具体描述请看本人博客《安卓获取手机设备硬件、系统、程序等信息》。
  • 注册app或者网络帐号的时候,经常需要手机获取验证码,来完成注册功能,那么android如何通过手机获取验证码来完成注册功能,代码是怎么实现的呢?下面看看小编给大家带了的一段代码分析吧
  • android监听手机app启动

    2016-12-02 18:30:47
    android监听app的启动,在API20以前用ActivityManager获取栈顶最近的应用,但API20以后捕捉不到手机上软件包名,这个更改可以获取最近打开app的包名,从而监听打开的APP
  • [android-002]android app获取手机的imei

    千次阅读 2018-07-25 19:31:43
    1.在AndroidManifest.xml文件添加权限 &lt;uses-permission android:name=&...2.在获取imei的函数里,先获取权限,再读取参数 //如果要获取imei,必须在这里配置权限 if (ContextCompat.checkSelfPermiss...
  • android 获取手机里安装的app信息列表
  • NumSpy:Android应用程序:这是一个Android应用程序,用户可以通过该应用程序免费搜索印度境内任何手机号码的详细信息,而无需进行任何注册/登录。 官方NumSpy项目: 屏幕截图 部署方式 我们尚未将此应用上传到...
  • android获取手机已经安装的app信息

    千次阅读 2019-07-30 11:38:04
    Android获取手机已安装APP(系统/非系统) 效果图 主体代码 private ListView mlistview; private List<PackageInfo> packageInfoList; private List<AppInfo> applicationInfoList; private ...
  • 安卓app签名获取工具

    2015-06-22 19:05:38
    获取已安装apk签名,轻松验证apk签名一致。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 167,894
精华内容 67,157
关键字:

安卓app获取手机号码