Android通过cmd获取设备基本信息

场景

在Android开发过程中,因为设备不同的原因,不同设备对同一个信息的获取并未完全保存一致.例如获取iccid,且在实际运行中可能需要获取设备的基本信息,而通过Android自带的方法,有时无法快速找到基本信息对应的标志名例如获取设备的cpu型号

目的

先通过cmd获取到设备的基本信息及对应的标志名,再通过Android代码进行获取查询

操作

通过网络查询,发现命令adb shell getprop 可以查询到很多信息

以下信息基于MT6737获取

F:>adb shell getprop
[af.music.outputid]: [3]
[af.rf_info]: [273]
[bgw.current3gband]: [0]
[camera.disable_zsl_mode]: [1]
[cdma.ril.eboot]: [0]
[cdma.ril.ecclist]: []
[cdma.version.baseband]: [SIXTH.CBP.MD.MP2.V90_P2, 2017/08/31 19:58]
[dalvik.vm.appimageformat]: [lz4]
[dalvik.vm.dex2oat-Xms]: [64m]
[dalvik.vm.dex2oat-Xmx]: [512m]
[dalvik.vm.heapgrowthlimit]: [128m]
[dalvik.vm.heapsize]: [256m]
[dalvik.vm.image-dex2oat-Xms]: [64m]
[dalvik.vm.image-dex2oat-Xmx]: [64m]
[dalvik.vm.isa.arm.features]: [default]
[dalvik.vm.isa.arm.variant]: [cortex-a53]
[dalvik.vm.isa.arm64.features]: [default]
[dalvik.vm.isa.arm64.variant]: [cortex-a53]
[dalvik.vm.lockprof.threshold]: [500]
[dalvik.vm.mtk-stack-trace-file]: [/data/anr/mtk_traces.txt]
[dalvik.vm.stack-trace-file]: [/data/anr/traces.txt]
[dalvik.vm.usejit]: [true]
[dalvik.vm.usejitprofiles]: [true]
[debug.MB.running]: [0]
[debug.atrace.tags.enableflags]: [0]
[debug.force_rtl]: [0]
[debug.hwc.bq_count]: [4]
[debug.hwc.compose_level]: [0]
[debug.hwui.render_dirty_regions]: [false]
[debug.mdlogger.Running]: [0]
[debug.mdlogger.log2sd.path]: [internal_sd]
[debug.mtk.aee.status]: [free]
[debug.mtk.aee.status64]: [free]
[debug.mtklog.netlog.Running]: [0]
[debug.pq.dshp.en]: [2]
[debug.pq.shp.en]: [2]
[dev.bootcomplete]: [1]
[drm.service.enabled]: [true]
[fmradio.driver.enable]: [1]
[gsm.baseband.capability]: [507]
[gsm.current.phone-type]: [1]
[gsm.defaultpdpcontext.active]: [true]
[gsm.gcf.testmode]: [0]
[gsm.lte.ca.support]: [0]
[gsm.network.type]: [LTE]
[gsm.nitz.time]: [1648716689065]
[gsm.operator.alpha]: [CMCC]
[gsm.operator.iso-country]: [cn]
[gsm.operator.isroaming]: [false]
[gsm.operator.numeric]: [46000]
[gsm.project.baseband]: [LEN6737M_65_SH_N_HW(LTG_DSDS)]
[gsm.radio.ss.phoneid]: [0]
[gsm.radio.ss.rawurl]: [false]
[gsm.ril.cardtypeset]: []
[gsm.ril.ct3g]: [0]
[gsm.ril.eboot]: [-1]
[gsm.ril.fulluicctype]: [USIM]
[gsm.ril.init]: [1]
[gsm.ril.sst.mccmnc]: [46004]
[gsm.ril.uicctype]: [USIM]
[gsm.serial]: [011801MT012345678901262290_145538                           10 ]
[gsm.sim.operator.alpha]: [CMCC]
[gsm.sim.operator.default-name]: [中国移动]
[gsm.sim.operator.imsi]: [460041937406159]
[gsm.sim.operator.iso-country]: [cn]
[gsm.sim.operator.numeric]: [46004]
[gsm.sim.retry.pin1]: [3]
[gsm.sim.retry.pin2]: [3]
[gsm.sim.retry.puk1]: [10]
[gsm.sim.retry.puk2]: [10]
[gsm.sim.ril.mcc.mnc]: []
[gsm.sim.ril.phbready]: [true]
[gsm.sim.ril.testsim]: [0]
[gsm.sim.state]: [READY]
[gsm.version.baseband]: [MOLY.LR9.W1444.MD.LWTG.MP.V136.P12, 2018/04/13 18:04]
[gsm.version.ril-impl]: [android reference-ril 1.0]
[hotknot.driver.version]: [-1]
[hotknot.hotknot_native.version]: [3.5.9]
[init.svc.MtkCodecService]: [running]
[init.svc.NvRAMAgent]: [running]
[init.svc.aal]: [running]
[init.svc.adbd]: [running]
[init.svc.agpsd]: [running]
[init.svc.audioserver]: [running]
[init.svc.batterywarning]: [running]
[init.svc.bootanim]: [stopped]
[init.svc.bootlogoupdater]: [stopped]
[init.svc.cameraserver]: [running]
[init.svc.ccci_fsd]: [running]
[init.svc.ccci_mdinit]: [running]
[init.svc.cmddumper]: [running]
[init.svc.console]: [running]
[init.svc.debuggerd]: [running]
[init.svc.debuggerd64]: [running]
[init.svc.drm]: [running]
[init.svc.emdlogger1]: [running]
[init.svc.emsvr_user]: [running]
[init.svc.enableswap]: [stopped]
[init.svc.epdg_wod]: [running]
[init.svc.fuelgauged]: [running]
[init.svc.gatekeeperd]: [running]
[init.svc.ged_srv]: [running]
[init.svc.gsm0710muxd]: [running]
[init.svc.healthd]: [running]
[init.svc.hotknot_native]: [running]
[init.svc.installd]: [running]
[init.svc.ipsec_mon]: [running]
[init.svc.keystore]: [running]
[init.svc.lmkd]: [running]
[init.svc.logd]: [running]
[init.svc.logd-reinit]: [stopped]
[init.svc.mal-daemon]: [running]
[init.svc.md_monitor]: [running]
[init.svc.media]: [running]
[init.svc.mediacodec]: [running]
[init.svc.mediadrm]: [running]
[init.svc.mediaextractor]: [running]
[init.svc.mnld]: [running]
[init.svc.mobile_log_d]: [running]
[init.svc.msensord]: [stopped]
[init.svc.netd]: [running]
[init.svc.netdiag]: [running]
[init.svc.nvram_daemon]: [stopped]
[init.svc.p2p_supplicant]: [running]
[init.svc.perfprofd]: [running]
[init.svc.pq]: [running]
[init.svc.program_binary]: [running]
[init.svc.ril-daemon-mtk]: [running]
[init.svc.ril-proxy]: [running]
[init.svc.servicemanager]: [running]
[init.svc.slpd]: [running]
[init.svc.sn]: [running]
[init.svc.start_modem]: [stopped]
[init.svc.statusd]: [running]
[init.svc.stp_dump]: [running]
[init.svc.surfaceflinger]: [running]
[init.svc.sysenv_daemon]: [running]
[init.svc.teei_daemon]: [running]
[init.svc.terservice]: [stopped]
[init.svc.thermal]: [running]
[init.svc.thermal_manager]: [stopped]
[init.svc.thermald]: [running]
[init.svc.ueventd]: [running]
[init.svc.vold]: [running]
[init.svc.volte_imcb]: [running]
[init.svc.volte_stack]: [running]
[init.svc.volte_ua]: [running]
[init.svc.vtservice]: [running]
[init.svc.wfca]: [running]
[init.svc.wifi2agps]: [running]
[init.svc.wmt_launcher]: [running]
[init.svc.wmt_loader]: [stopped]
[init.svc.zygote]: [running]
[init.svc.zygote_secondary]: [running]
[log.tag]: [M]
[log.tag.WifiHAL]: [D]
[log.tag.WifiHW]: [W]
[logmuch.detect.value]: [0]
[media.wfd.portrait]: [0]
[media.wfd.video-format]: [5]
[mediatek.wlan.chip]: [CONSYS_MT6735]
[mediatek.wlan.ctia]: [0]
[mediatek.wlan.module.postfix]: [_consys_mt6735]
[mtk.duraspeed.on]: [false]
[mtk.md1.status]: [ready]
[mtk.md3.status]: [ready]
[mtk.vdec.waitkeyframeforplay]: [1]
[mtk_wifi.fwpath]: [STA]
[net.bt.name]: [Android]
[net.cdma.boottimes]: [1]
[net.cdma.mdmstat]: [ready]
[net.cdma.via.service.state]: [out of service]
[net.change]: [net.dns2]
[net.dns1]: [192.168.10.1]
[net.dns2]: []
[net.handover.rat]: [0]
[net.handover.thlte]: [-116,-111,-106]
[net.hostname]: [android-e1e7143fb9d66750]
[net.ims.ipsec.version]: [2.0]
[net.nsiot_pending]: [false]
[net.perf.internal.cpu.core]: [2,2,0,0]
[net.perf.internal.cpu.freq]: [819000,819000,0,0]
[net.perf.rps.default]: [ff]
[net.perf.tether.cpu.core]: [4,4,0,0]
[net.perf.tether.cpu.freq]: [1144000,1144000,0,0]
[net.perf.tether.rps]: [0f]
[net.qtaguid_enabled]: [1]
[net.tcp.default_init_rwnd]: [60]
[persist.datashaping.alarmgroup]: [1]
[persist.log.tag.AT]: [I]
[persist.log.tag.C2K_AT]: [I]
[persist.log.tag.C2K_ATConfig]: [I]
[persist.log.tag.C2K_RILC]: [I]
[persist.log.tag.LIBC2K_RIL]: [I]
[persist.log.tag.RIL-DATA]: [I]
[persist.log.tag.RILC]: [I]
[persist.log.tag.RILC-MTK]: [I]
[persist.log.tag.RILC-RP]: [I]
[persist.log.tag.RILMUXD]: [I]
[persist.log.tag.RfxController]: [I]
[persist.log.tag.RfxMainThread]: [I]
[persist.log.tag.RfxRilAdapter]: [I]
[persist.log.tag.RfxRoot]: [I]
[persist.meta.dumpdata]: [0]
[persist.mtk.connsys.poweron.ctl]: [0]
[persist.mtk.datashaping.support]: [1]
[persist.mtk.ims.video.enable]: [1]
[persist.mtk.volte.enable]: [1]
[persist.mtk.wcn.combo.chipid]: [0x0321]
[persist.mtk.wcn.dynamic.dump]: [0]
[persist.mtk.wcn.patch.version]: [20170220100539a]
[persist.mtk_dynamic_ims_switch]: [0]
[persist.mtk_epdg_support]: [1]
[persist.mtk_ims_support]: [1]
[persist.mtk_nlp_switch_support]: [1]
[persist.mtk_vilte_support]: [1]
[persist.mtk_volte_support]: [1]
[persist.mtk_wfc_support]: [1]
[persist.radio.cdma_slot]: [1]
[persist.radio.cfu.change.0]: [0]
[persist.radio.cfu.iccid.0]: [898607b9191730520159]
[persist.radio.cfu.timeslot.0]: []
[persist.radio.data.iccid]: [898607b9191730520159]
[persist.radio.default.sim]: [0]
[persist.radio.fd.counter]: [150]
[persist.radio.fd.off.counter]: [50]
[persist.radio.fd.off.r8.counter]: [50]
[persist.radio.fd.r8.counter]: [150]
[persist.radio.flashless.fsm]: [0]
[persist.radio.flashless.fsm_cst]: [0]
[persist.radio.flashless.fsm_rw]: [0]
[persist.radio.ia]: [898607b9191730520159,IPV4V6,-1,,0]
[persist.radio.ia-apn]: [CMIOT]
[persist.radio.ia-pwd-flag]: [0]
[persist.radio.last_iccid_sim1]: [898607b9191730520159]
[persist.radio.mobile.data]: [0,0]

以上信息中目前需要的是iccid及cpu类型;有效信息如下

[persist.radio.cfu.iccid.0]: [898607b9191730520159]
[persist.radio.cfu.timeslot.0]: []
[persist.radio.data.iccid]: [898607b9191730520159]
[persist.radio.last_iccid_sim1]: [898607b9191730520159]

[ro.hardware]: [mt6735]
[ro.mediatek.platform]: [MT6737T]

以下信息基于MT6765获取

与上述获取MT6737一致,目前需要的是iccid及cpu类型;有效信息如下

[persist.vendor.radio.cfu.iccid.0]: [898604931721C0119926]

[ro.hardware]: [mt6765]
[ro.mediatek.platform]: [MT6765]

对比MT6737和MT6765信息

两个型号获取iccid的标志名不同
两个型号获取到ro.hardware的信息中MT6737显示为6735,信息与厂家给的信息不一致所以暂不使用,采用ro.mediatek.platform

Android代码获取

以iccid信息获取为例,采用android.os.SystemProperties

    public String getICCID(){
        String value = "null";
        try {
            Class<?> c = Class.forName("android.os.SystemProperties");
            Method get = c.getMethod("get", String.class, String.class);
            //value = (String) (get.invoke(c, "ril.iccid.sim1", "unknown"));
            if(cpuType.equals("MT6737T")){
                value = (String) (get.invoke(c, "persist.radio.cfu.iccid.0", "unknown"));
            }else{
                value = (String) (get.invoke(c, "persist.vendor.radio.cfu.iccid.0", "unknown"));
            }
            Log.d("PrepareActivity","ccid in getproperty is " + value);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            return value;
        }
    }

其他

目前使用上述指令可用,如有更多需求后续再添加,且上述只是获取,设置方式待后续学习补充

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值