精华内容
下载资源
问答
  • 所谓RFID-SIM就是将普通SIM和RFID芯片做集成,使得一片SIM中还具备RFID的功能,彻底改变传统SIM只能和手机进行通讯的缺点,使更换了RFID-SIM手机可以随时和周围的设备进行交互,并且不影响SIM的原有功能...
  • COVID-19期间,我们学校实行通行证制度,只有具有通行证的同学的卡才可以自由进出... 使用带NFC功能手机模拟 NFC读卡器 + 白卡 带NFC功能手机+手环 or NFC 读卡器+白卡+手环 都有唯一的ID,这个ID在门禁识别的时候用

    COVID-19期间,我们学校实行通行证制度,只有具有通行证的同学的卡才可以自由进出校园,他而没有通行证的人下人出校只能是一种奢望。在这种无理取闹的制度之下,我试想通过NFC模拟出那些可以自由进出的同学的校园卡,从而实现自由进出校园。其实这个想法已经有人做了,使用手机自带的nfc模拟校园卡,是可以实现门禁进出功能的。经过实际测试,一下方案是可行的:

    • 使用带NFC功能手机模拟
    • NFC读卡器 + 白卡
    • 带NFC功能手机+手环 or NFC 读卡器+白卡+手环

    首先第一种,使用带nfc功能的手机模拟,这个是最简单的,只需要打开手机的钱包/卡包app然后模拟门禁卡读取需要复制的卡即可,这样每次进学校大门的时候直接刷手机进来就行。
    然而对于手机不带NFC功能的手机,譬如我的就是,就比较难搞了。此外,使用手机NFC模拟不具有可拓展性,一台手机只能当作一张卡片使用,如果需要多张卡片就需要多个手机了。因此我们的解决方案是通过复制白卡来实现制作门禁卡,白卡复制不存在可拓展性这个问题。首先自己购买白卡,然后先读校园卡,再将其写入白卡。我们知道每一张卡都有唯一的ID,这个ID在门禁识别的时候用到。接下里本文的所有操作遵循1.读卡获取卡片ID ;2.将ID写入白卡。通过这两步,就得到了和原来的卡ID一模一样的卡,这个卡就可以拿来刷进校门了。
    根据读卡,写卡的媒介不同,可以分为三种平台,win,mac,和手机&手环这些。根据卡片的类型不同,可以分为UID,CUID,M1,CPU卡。
    卡片类型介绍:

    • M1卡:全称Mifare classic 1K,普通IC卡,0扇区不可修改,其他扇区可以反复擦写。通常我们使用的门禁卡、电梯卡都是M1卡。M1卡是NXP(恩智浦半导体)公司研发的IC卡,执行标准是ISO/IEC14443 Type A,读写频率是13.56MHz。目前大多数手机厂商使用的NFC芯片都是NXP,另一部分则是BRCM(博通)方案,均执行同一标准,这是手机读写M1卡的技术基础。
    • UID卡:普通复制卡,可以反复擦写所有扇区,门禁有防火墙则失效。
    • CUID:升级复制卡,可以反复擦写所有扇区,可以穿透大部分防火墙。【我们的白卡是购买此种类型的卡
    • CPU卡:有操作系统,可存储数据,也有自己的ID号,CPU卡发一串数据给设备,设备与SAM卡进行运算,设备再发一串数据回CPU卡确认,然后进行交易或身份认证;跟M1卡的区别在于一个算法在空中,一个算法在设备里面;无论是卡商,设备商,运营商,都不知道其中的算法,所以这个系统的安全性会高很多。【校园卡等大多数具有金融功能的卡属于此种类型】

    目前,大多数校园卡为CPU卡,也就是加密级别最高的卡。好在,金融扇区和门禁ID扇区是分开的,这使得我们可以通过复制卡片的ID来实现门禁功能。
    根据不同平台,其复制校园卡的难度排序是
    Mac > Win > 手机写卡> 手机模拟,手环模拟

    • 平台

      • Win
      • Mac OS X
      • Android&手环
    • 卡片类型

      • UID
      • CUID
      • M1
      • CPU
    • 读卡器

      • PN532 【for mac and windows】
        该读卡器从某宝购入,附赠两个这种白卡,一共花费¥63。又额外买了10张CUID白卡,长下面这个样子,约¥1/张。

    从某宝购入的读卡器

    1. 使用Mac进行NFC读写

    • GUI 工具
      现存的针对Mac平台的NFC读写软件较少,我只找到了这两个GUI程序,但是这两个软件都连接不上我的PN532读卡器,遂作罢。查看App Store上的说明看到,这两个工具均不支持PN532,但是支持另一个非常常用的读卡器ACR122U。我手头上没有对应的读卡器,所以这条路走不通了。(以后可以考虑再买一个ACR122U)

      在这里插入图片描述

    • Command Line Tools or 读写API
      考虑使用命令行工具,或者是用对应的API来读写NFC。
      在网上搜索,使用关键词Mac NFC百度搜索,得到的结果都是用iPhone来做的??难道Mac == IPhone了??后来找到了一篇记录: 记Macbook Pro配合FT232使用PN532模块,算是中文互联网上位数不多的经验贴了,跟着这位兄弟一点点搭建好了需要的依赖库。

    • 硬件连接:MBP2019 雷电3 接口-> type-c 转USB3.0拓展坞->USB连接PN532

    • 驱动Driver ?

    • 软件需求: libusb -> libnfc ,mfoc ,mfcuk

      • 安装Libusb
        • 官网 https://libusb.info/,GitHub:https://github.com/libusb/libusb
        • 安装方法一: 从官网或者是GitHub下载源代码->解压->进入包目录 ->依次执行$ ./configure ->$ make ->$ make install
          • $ ./configure&&make&&make install
        • 安装方法二:Homebrew安装
          • 直接$ brew install libusb
          • 刚开始的时候执行这个命令报错:Error: libusb: undefined method `license' brew install这里找到了解决方案,出现这个原因说明当前brew版本太老了,只需要更新一下,brew update -v,执行两次这个命令,然后再 brew install libusb就成功了。
        • 注1: 这里推荐使用homebrew安装,接下来的几个也是推荐brew。
        • 注二:一个问题,我第一次使用的是源代码编译安装,最后$ make install也都成功了。但是执行下一步的时候提示libusb.h头文件找不到,header not found.第二遍安装使用的是$ brew install libusb安装,就没有这个问题出现,可见,使用brew可以轻松的安装配置各种包,不需要自己对各种环境配置揪心。所以强烈建议使用homebrew安装。
      • 安装Libnfc
        • 官网 http://www.libnfc.org/,GitHub :https://github.com/nfc-tools/libnfc
        • 安装方法同样两种,一样的操作
        • 安装方法一:官网或者GitHub下载源代码,解压,进入目录,依次执行$ ./configure ->$ make ->$ make install
        • 安装方法二:$ brew install libnfc
      • 安装mfoc
        • GitHub:https://github.com/nfc-tools/mfoc
        • 安装方法一:参见GitHub readme,
          $ autoreconf -is [注:这里需要安装autoreconf,方法$brew install automake]
          $./configure
          $ make && sudo make install
        • 执行$./configure时报错如下:PKG_CHECK_MODULES(libnfc, libnfc >= $LIBNFC_REQUIRED_VERSION, , AC_MSG_ERROR([libnfc >= $LIBNFC_REQUIRED_VERSION is mandatory.])),没有找到解决办法,这里有一个解释。最后采用了homebrew安装。
        • 安装方法二:homebrew安装
          • $ brew install mfoc
      • 安装mfcuk
        • 放弃源代码安装,直接homebrew安装$ brew install mfcuk

    至此,所有软件已经安装完毕,此时进入终端输入nfc-list,即可查看当前的卡片信息
    在这里插入图片描述
    可以看到这张卡的SAK是20,这意味着我这张卡是一张CPU卡,我们需要的东西即是这个UID。

    使用nfc-mfcassic 命令可以读写卡。但是在后续的写卡过程中遇到两个严重的问题:

    • nfc写入不进去
      不知怎么地,写入命令可以正常执行,没有报错,但是却没有写入。卡片的ID还是之前的。不知为何。
    • 大端小端问题
      可以后续对dump文件进行编辑的过程中,可能由于大小端问题,编辑的文件总是不对。这个dump文件就是这张卡的1K字节的二进制文件,前4个字节是UID,第5个字节是校验字节,其值是UID四个字节的异或值。我们只需要修改这5个字节,其他的不需要改动。

    2.使用Windows进行读写

    使用Windows相对较为简单,相关的经验贴也有很多,出现问题大多数也都能找得到解决方案。首先是软件,读卡器软件链接 :https://pan.baidu.com/s/1DQVDdLNUirx33kr18j7EEw 提取码:0rkw,这个是我在淘宝店买读卡器赠送的。这个文件里面包含了很多细节,里面描述的很清楚,在这里就不再赘述了,按照里面的来一般不会有问题。
    使用步骤:

    • 1.准备工作

      • 硬件连接: PN352直接插上USB口即可
      • 软件准备
        • 安装驱动 : 参照文件
        • 安装读写工具 NFC reader
          这里我建议使用教程与软件/增值资料/PN532工具V3.0_crack.exe这一个来安装,使用NFC REA 3.0这一个读取不到CPU卡的UID,因此后续无法使用,如果你的卡是普通的M1卡,则可以使用这一个软件。
    • 2.读卡 : 使用该读写软件的玩转NFC,再扫描卡片类型,就可以看到这张卡片的信息来,可以看到UID,为4个字节。这就是我们费劲千辛万苦需要的东西!
      在这里插入图片描述

    • 3.写白卡

      • 准备一张白卡,读白卡,点扇区左边👈的小三角可以保存白卡的dump文件。
        在这里插入图片描述

      • 编辑dump文件:使用二进制文件编辑器,只要可以编辑二进制文件就可以。这里使用增值资料/辅助工具/dump编辑软件.exe 更改前4个字节为UID,第5个字节为校验码(即UID四个字节的异或值,可以在这里计算)。然后保存即可

      • 写入白卡,将刚才编辑的dump文件写入(使用写M1卡方式)即可,大功告成!
        (为了防止写入错误,写入之后,再读取一下卡片,看看前5个字节的内容对不对。)

    在这里插入图片描述

    3.手机NFC&手环NFC

    手机读写白卡可以使用NFC simulator。具体使用方法见:
    教你用Android NFC手机制作门禁卡
    如何用小米NFC手机模拟加密卡(的部分功能)

    手机模拟成功之后,可以再用手环模拟手机,这样就可以来。
    也可以使用,手环模拟写好的白卡,也可以模拟出来。
    参考:小米手环4玩转自定义表盘/开门锁/模拟加密卡

    目前学校已经实施进出校园报备制,因此此种方法已经退出来历史舞台。

    4.一些问题

    • UID/CUID卡如何复制?
      这两种类型的卡片是很容易,可以直接读取所有扇区内容,然后将其写入到另外一张白卡即可。不需要额外编辑dump文件。
    • M1卡如何复制?
    • 写入是UID还是CUID还是M1?
      据我测试,使用三种写入方式得到的卡片均可正常刷开门禁。
    • 金融消费能用吗?
      显然是不行的【CPU】。maybe possible【M1卡】【暴力破解】
    • 校验码一定要计算准确哦,如果计算错误,写入到卡片之后,这张卡就报废了。无法再读写。
    • 图书馆能用吗?经测试,在我们学校图书馆是刷不进去的。
    • 白卡太明显了?这种纯白色的卡还是套上卡套吧,收敛一点。

    5.其他参考:

    展开全文
  • 虽然小米说它的手机可以复制门禁,但是加密它不让复制,就连完全没有加密的门禁也无法复制, 因为它不让你写入0扇区,你就没有对应的id号,那门怎么会开呢?必须要吐槽一下 当然网上也有改它模拟ID号方法...

    虽然小米说它的手机可以复制门禁卡,但是加密卡它不让复制,就连完全没有加密的门禁卡也无法复制,

    因为它不让你写入0扇区,你就没有对应的id号,那门怎么会开呢?必须要吐槽一下

    当然网上也有改它模拟的ID号方法,但那样可能会改变系统文件夹,会对以后带来风险

    原料:安卓软件taginfo和mifare经典工具,网上很好下载的

               如果检测到是无加密卡,就可以去淘宝买cuid卡了,然后就可以尝试了

     

    1:我们首先在安卓下载taginfo这个软件,开启nfc后会自动读取,我们可以看到,这张卡没有任何加密,只有0扇区有有用的信息

    说明我们有可能模拟成功。如果是加密卡的话你就得用其他软件常用密钥来试一试,不能的话,你就得用pm3来搞了。

     

    2:接下来我们下载mifare经典工具,来读标签

     

    3:接下来勾选如图,我们点击启动映射读标签

    坑:如果发现报错不能读取,可以卸载重装,或换一个下载地方再试一试,卡不要离开手机

     

    4:如图,我们可以看到扇区已经被读取出来了,点击红圈我们就可以保存文件了

     

     

     

    5:接下来我们先去首页选择写表标签再选择如图写储存,

     6:先点击显示选项,再勾选高级:厂商块写入,一定要勾选

    再点击选择储存,找到我们刚才的文件

     

     

     7:接下来就会跳出写扇区,我们全勾选就可以了

    然后再点击写数据

    如果报:没有找到标签,就把卡贴近手机或刚才步骤再试一试

    很快我们就可以把数据写入卡里了

     

     

    最后吐槽:垃圾小米的私密文件夹,之时隐藏文件,如果删错那个显示是空文件的话,你所有私密文件都见鬼去了

    展开全文
  • 浅谈门禁

    2021-04-13 11:03:53
    ID卡 一串身份ID CPU卡 SAK20 (常见于金融、高端会员、高端加油卡等) 模拟卡 SAK28 JOCP31/41 由于市面上普遍使用IC卡 SAK08 Mifare CLassic 1k ,因此我们主要对此进行讨论~ 门禁卡的区分方法 通过手机NFC标签...

    浅谈门禁卡

    由于稚辉军的门禁卡,初略的了解一下门禁卡的分类以及内部结构。以此记录学习内容,已故后期回顾。如有不谨慎的地方,还望指点!

    img

    门禁卡的分类


    IC卡 SAK08 Mifare CLassic 1k (市面上普遍常见的卡)

    ID卡 一串身份ID

    CPU卡 SAK20 (常见于金融、高端会员、高端加油卡等)

    模拟卡 SAK28 JOCP31/41

    由于市面上普遍使用IC卡 SAK08 Mifare CLassic 1k ,因此我们主要对此进行讨论~

    门禁卡的区分方法


    • 通过手机NFC标签功能查看卡的类型

      MCT->工具->标签(显示卡的信息)

    • 使用PN532 PM3 变色龙等上位机查看卡的类型

    • 通过观察卡内线圈形状来判断(准确率不高)

      一般来说方形线圈的为IC卡,圆形的为CPU卡,方形加圆形一般来说是双频卡

      img

    IC卡介绍


    市面上IC卡种类偏多,内部错综复杂,在此主要介绍M1卡~

    M1卡数据结构

    M1卡的容量是 1KB 注意是KB 进而解释了 看到数据是8Kb (1Byte=1bit)也可以理解为有 8192个二进制 也就是 0 or 1

    当然数据不可能是一串长长的二进制。虽然只有1KB大小 却也组成一个储存单元

    M1卡 分为 16个扇区 编号 0~15扇区

    1个扇区又分为4个块(M1卡的最小存储单元)

    每一块有16字节 (16bit)

    通常我们使用一个块 or 两个块来储存数据,通常来说数据会进行加密,这里不进行深入探讨~

    img

    如图所见:每个扇区的第四块:FF FF FF FF FF FF FF 07 80 69 FF FF FF FF FF FF记录着数据

    那么这些数据是些什么那?

    当当当! 魔法!!!

    其实是M1卡的加密的密钥。左边的第一个密钥FF FF FF FF FF FF FF是密钥A 那右边的密钥当然是

    密钥BFF FF FF FF FF FF FF,那问题又来了中间的07 80 69这个是什么那?

    其实是两个密钥之间的控制字段~

    细心的同学肯定发现了第0扇区的第一个块的数据(绝对0块)是什么?

    BA E7 DA 14 93 08 04 00 62 63 64 65 66 67 68 69

    这些看不懂的东西其实是每个厂商的代码唯一的序列号(一般来说储存着厂商信息,也可以理解身份),并且已经固化,不可更改!

    在一些拥有NFC的手机可以使用NFC进行模拟(通过NFC标签功能)但是手机厂商因为绝对0块的原因无法进行模拟!

    M1卡是典型的高频卡,工作频率为13.56MHz,一般调频(FM)收音机接收的广播频率在87MHz到108MHz之间。猜想:如果高频卡工作频率达到80MHz以上时在读卡或写卡时产生的频率应该能对该频段收音机产生电磁干扰。
    通信速率:106KBPS,也就是说可以在10毫秒的时间内完成读写内容。
    工作半径:100mm。大约在100mm以内的距离,可以使用读卡器对m1卡进行操作(一般写距离要小于读距离)。

    下面将讲述模拟门禁卡的大略思路

    门禁卡的模拟


    主要是思路是通过把门禁卡破译,然后一张空白卡作为中间介子,把破译后的1KB.dump文件写入空白卡,从而绕过绝对0块~ 本片文章仅供学习,因此不主要介绍破译过程

    img

    空白卡的介绍

    1. UID卡:普通复制卡,可以重复擦写所有扇区,遇到防火墙全失效
    2. CUID 卡:升级复制卡,屏蔽UID复制卡的系统可用CUID 代替UID,可以重复擦写所有扇区
    3. FUID卡:高级复制卡,CUID复制没用的情况下使用,0扇区只能写入一次,写入一次变成M1卡,写过之后可以重复擦写0扇区外的其他扇区
    4. UFUID卡:高级复制卡,理解为是UID和FUID的合成卡,需要封卡操作,封卡之后变M1卡,不封卡就是UID卡

    模拟工具:PN532、PM3、变色龙等

    文章部分借鉴,侵删

    展开全文
  • nfc常识

    2019-04-17 15:20:43
    出于安全方面的考虑,小米手机刷门卡功能暂时只会支持未经加密且NFC频段在13.56MHZ的MIFARE1,NFC硬件只支持IC,对于ID卡门禁系统,NFC硬件不支持。带有门卡功能的***和储值消费、公交消费。等功能的门卡暂时不...

    1、门卡类型不支持
    出于安全方面的考虑,小米手机刷门卡功能暂时只会支持未经加密且NFC频段在13.56MHZ的MIFARE1卡,NFC硬件只支持IC卡,对于ID卡门禁系统,NFC硬件不支持。带有门卡功能的***和储值消费、公交消费。等功能的门卡暂时不能被模拟。
    在这里插入图片描述
    2、加密门卡,无法模拟

    出于安全性的考虑,暂不支持加密卡的模拟。本次MIUI9开发版上线的手机刷门卡功能会从软硬两方面进行多重安全保障。硬件层面,小米手机采用NFC技术模拟卡片信息,全程会做加密存储,并保证卡片信息进行物理隔离。软件方面,卡片模拟功能需要进行实名认证,建立可靠信用机制,和用户的手机账号绑定,一旦账号注销或者退出,被模拟的门卡也将同步被注销。

    总结来说
    1、只支持NFC功能下的卡模拟;2、NFC硬件只支持IC卡,不支持ID卡门禁系统;3、支持NFC频段在13.56MHZ,不同频率无法识别;4、支持符号条件且未经加密的卡,无法识别加密卡;5、一个手机最多只可以模拟两张卡片。6,其实现在用无加密的ic很少了,大多为id很多也不在该频段内,最大的功能也就经常坐公交,坐地铁比较方便

    转载自https://www.znj.com/news/2786.html

    展开全文
  • nfc

    2012-04-13 01:07:36
    nfc开关 nfc读写 读:id/....NFC技术在手机中可以有三种功能状态,一是卡模拟状态,利用RFID等技术,实现支付、门禁等功能;二是识读器状态,利用手机屏幕读取信息,包括智能标签、海报等;另一种则是自
  • 学习平台源码新版

    2018-11-27 11:45:16
    学员可以通过手机或者电脑登录网站随时随地学习平台课程,学习内容包括:视频点播、在线题库、模拟考试、在线考试四大模块。 点播模块:平台可以制作微课视频系列,学员可以自己在家通过看老师提前制作好的视频进行...
  • 基于STM32的智能安防

    2019-04-26 09:52:29
    能够将当前的RFID的卡号与识别时间保存到FLASH当中,保存记录为100条,格式(年月日 时分秒 卡ID 合法/非法)如下: 2017-9-21 15:52:50 AABBCCDD 1 //合法 2017-9-21 15:52:50 AFBFCFDF 0 //非法 当红外接收头接收...
  • 学员可以通过手机或者电脑登录网站随时随地学习平台课程,学习内容包括:视频点播、在线题库、模拟考试、在线考试四大模块。点播模块:平台可以制作微课视频系列,学员可以自己在家通过看老师提前制作好的视频进行...
  • Android4.0开发人员选项详尽解析

    千次阅读 2013-11-19 22:00:10
    例如:读取手机上的内存,所以平时一直开着就可以了。 开发设备ID:该设备用于程序员开发时的独立设备编号; 保持唤醒状态:充电或链接数据线时屏幕不会休眠; 允许模拟地点:是允许模仿位置是软件开发...
  • 完整的手机数据存取功能:铃声模式设置、震动控制、WiFi服务、屏幕旋转、电池计量、温度测量、电信网络信息、SIM信息、拨打电话、短信解析、通讯录联系人、电子罗盘、屏幕手写等手机控制功能。 系统服务及研发的...
  • 完整的手机数据存取功能:铃声模式设置、震动控制、WiFi服务、屏幕旋转、电池计量、温度测量、电信网络信息、SIM信息、拨打电话、短信解析、通讯录联系人、电子罗盘、屏幕手写等手机控制功能。 系统服务及研发的...
  • 完整的手机数据存取功能:铃声模式设置、震动控制、WiFi服务、屏幕旋转、电池计量、温度测量、电信网络信息、SIM信息、拨打电话、短信解析、通讯录联系人、电子罗盘、屏幕手写等手机控制功能。 系统服务及研发的...
  • 完整的手机数据存取功能:铃声模式设置、震动控制、WiFi服务、屏幕旋转、电池计量、温度测量、电信网络信息、SIM信息、拨打电话、短信解析、通讯录联系人、电子罗盘、屏幕手写等手机控制功能。 系统服务及研发的...
  • 完整的手机数据存取功能:铃声模式设置、震动控制、WiFi服务、屏幕旋转、电池计量、温度测量、电信网络信息、SIM信息、拨打电话、短信解析、通讯录联系人、电子罗盘、屏幕手写等手机控制功能。 系统服务及研发的...
  •  《Google Android SDK开发范例大全(第3版)》在上一版的基础上,以Android手机应用程序开发(采用Android SDK 2.3.3)为主题,超过200多个范例全面且深度地整合了手机、网络及服务等多个开发领域,为读者提高程序...
  •  《google android sdk开发范例大全(第3版)》在上一版的基础上,以android手机应用程序开发(采用android sdk 2.3.3)为主题,超过200多个范例全面且深度地整合了手机、网络及服务等多个开发领域,为读者提高程序设计...
  • 8.11将手机文件上传至网站服务器——模拟http form的post action 8.12移动博客发布器——以xml-rpc达成远程过程调用 8.13移动rss阅读器——利用saxparser解析xml 8.14远程下载安装android程序——apk installer的...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.3 更改TextView文字颜色——引用Drawable颜色常数及背景色 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...
  • 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——Style样式的定义 3.7 简易的按钮事件——Button事件处理 3.8 ...

空空如也

空空如也

1 2 3
收藏数 57
精华内容 22
关键字:

手机模拟id卡