Android平台第三方SDK会采集用户的那些隐私数据及具体实现代码

    // 获取Ip地址

    int ipAddress = wifiInfo.getIpAddress();

    // 每个配置的网络都有一个唯一的标识,用于识别网络上执行操作时的请求者。

    // 这个方法返回当前连接网络的ID

    int networkId = wifiInfo.getNetworkId();

    // 返回当前的接收信号强度

    int rssi = wifiInfo.getRssi();

    // 当前的服务集标识符

    String ssId = wifiInfo.getSSID();

    // 当前的链接速度(网速),单位Mbps

    int linkSpeed = wifiInfo.getLinkSpeed();



    Log.i(TAG, "status = " + status);

    Log.i(TAG, "macAddress = " + macAddress);

    Log.i(TAG, "bissId = " + bissId);

    Log.i(TAG, "ipAddress = " + ipAddress);

    Log.i(TAG, "networkId = " + networkId);

    Log.i(TAG, "rssi = " + rssi);

    Log.i(TAG, "ssId = " + ssId);

    Log.i(TAG, "linkSpeed = " + linkSpeed);



}



2、获取用户移动设备的联网信息



public void getTelephonyInfo(Context context) {

    TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);

    // 手机串号:GSM手机的IMEI 和 CDMA手机的 MEID.

    String deviceId = telephonyManager.getDeviceId();

    // 返回设备的软件版本号,例如GSM手机的IMEI/SV

    String imei = telephonyManager.getDeviceSoftwareVersion();



    /* 手机类型:

     * @see #PHONE_TYPE_NONE // 无信号

     * @see #PHONE_TYPE_GSM  // GSM信号

     * @see #PHONE_TYPE_CDMA // CDMA信号

     * @see #PHONE_TYPE_SIP  // SIP信号

     */

    int phoneType = telephonyManager.getPhoneType();

    String imsi = telephonyManager.getSubscriberId();



    // 运营商名称(仅当用户已在网络注册时有效,在CDMA网络中结果也许不可靠)

    String networkOperatorName = telephonyManager.getNetworkOperatorName();

    // 注册网络的MCC+MNC

    String networkOperator = telephonyManager.getNetworkOperator();

    // 网络国家代码,MCC

    String networkCountryIso = telephonyManager.getNetworkCountryIso();



    /*

     * 当前使用的网络类型:

     * NETWORK_TYPE_UNKNOWN  网络类型未知  0

       NETWORK_TYPE_GPRS     GPRS网络  1

       NETWORK_TYPE_EDGE     EDGE网络  2

       NETWORK_TYPE_UMTS     UMTS网络  3

       NETWORK_TYPE_HSDPA    HSDPA网络  8

       NETWORK_TYPE_HSUPA    HSUPA网络  9

       NETWORK_TYPE_HSPA     HSPA网络  10

       NETWORK_TYPE_CDMA     CDMA网络,IS95A 或 IS95B.  4

       NETWORK_TYPE_EVDO_0   EVDO网络, revision 0.  5

       NETWORK_TYPE_EVDO_A   EVDO网络, revision A.  6

       NETWORK_TYPE_1xRTT    1xRTT网络  7

     */

    int networkType = telephonyManager.getNetworkType();



    // 当前网络是否处于漫游

    boolean isNetworkRoaming = telephonyManager.isNetworkRoaming();



    // 获取手机SIM卡的序列号

    String simSerialNumber = telephonyManager.getSimSerialNumber();

    // 是否有ICC卡(sim卡)

    boolean isSim = telephonyManager.hasIccCard();



    /*

     * 获取Sim卡状态,SIM的状态信息:

     SIM_STATE_UNKNOWN          未知状态 0

     SIM_STATE_ABSENT           没插卡 1

     SIM_STATE_PIN_REQUIRED     锁定状态,需要用户的PIN码解锁 2

     SIM_STATE_PUK_REQUIRED     锁定状态,需要用户的PUK码解锁 3

     SIM_STATE_NETWORK_LOCKED   锁定状态,需要网络的PIN码解锁 4

     SIM_STATE_READY            就绪状态 5

     */

    int simState = telephonyManager.getSimState();



    // 获取ISO国家码,相当于提供SIM卡的国家码。

    String simCountryIso = telephonyManager.getSimCountryIso();



    // 通话状态:无活动、响铃、摘机(接通)

    int callState = telephonyManager.getCallState();



    // 获取本机的手机号(有些手机号无法获取,是因为运营商在SIM中没有写入手机号)

    String phoneNumber = telephonyManager.getLine1Number();

    //获取语音邮件号码:

    String voiceMailNumber = telephonyManager.getVoiceMailNumber();



    /*

     * 获取数据连接的活动类型

     *

     * @see #DATA_ACTIVITY_NONE

     * @see #DATA_ACTIVITY_IN // 下行流量

     * @see #DATA_ACTIVITY_OUT // 上行流量

     * @see #DATA_ACTIVITY_INOUT

     * @see #DATA_ACTIVITY_DORMANT // 休眠

     */

    int dataActivty = telephonyManager.getDataActivity();



}



四、设备信息类



public void getDeviceInfo(Context context) {

    // 硬件制造商

    String manufacturer = Build.MANUFACTURER;

    // 系统定制商

    String brand = Build.BRAND;

    // 主板

    String board = Build.BOARD;

    // 机型信息

    String model = Build.MODEL;

    // 显示屏参数

    String display = Build.DISPLAY;

    // Android版本

    String release = Build.VERSION.RELEASE;

    // Android SDK版本

    int sdkInt = Build.VERSION.SDK_INT;



    // 获取用户的语言环境

    Locale locale = context.getResources().getConfiguration().locale;

    String country = locale.getCountry();

    String displayLanguage = locale.getDisplayLanguage();

    String displayName = locale.getDisplayName();

    String displayVariant = locale.getDisplayVariant();



    int mnc = context.getResources().getConfiguration().mnc;

    int mcc = context.getResources().getConfiguration().mcc;

    // 横竖屏

    int orientation = context.getResources().getConfiguration().orientation;

    int densityDpi = context.getResources().getConfiguration().densityDpi;

    float fontScale = context.getResources().getConfiguration().fontScale;



    Log.i(TAG, "manufacturer = " + manufacturer);

    Log.i(TAG, "brand = " + brand);

    Lo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值