自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (19)
  • 问答 (1)
  • 收藏
  • 关注

转载 Java 注解(Annotation)

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。 当然它也支持自定义 Java 标注。网上很多关于 Java Annotation 的文章,看得人眼花缭乱。Java Annotation 本来很简单的,结果说的人没说清

2020-09-21 20:52:05 256

转载 Android Studio无线Wifi调试手机的两种方案

Android Studio无线Wifi调试手机的两种方案 第一种方式 使用adbWireless连接 第二种方式 使用插件Android Wifi ADB连接 总结 第一种方式 使用adbWireless连接使用adbWireless工具,其能够让手机用无线来取代USB连接而使用ADB工具1. 手机需要与电脑在同一局域网内2. 把adbWireless安装到手机上,并开启,上面会显示一个IP地址3. 在Android studio的Terminal里面执行adb con.

2020-09-21 20:48:38 1033

转载 用Kotlin的Anko库优雅开发Android应用--Anko库详细教程

前言最近Kotlin的呼声又是日益高涨,前几天9012年Google IO正式将Kotlin从first _class提升为kotlin_first。我也是接触了一段时间的Kotlin,给我的感觉就是简约,快速。无需繁琐的findId,高阶函数的应用,再加上Kotlin的null 安全,更是将代码的崩溃率降到更低。今天我们就来介绍一下今天的主角—Anko1.AnkoAnko是JetBrains开发的一个强大的库,说起JetBrains ,那就牛逼了,Kotlin语言是他们开发的,最流行的的开

2020-09-21 19:57:48 5553

转载 Kotlin(五)掌握基础知识:协程(kotlinx.coroutines)详解

Kotlin(一)掌握基础知识:数据、集合、库函数Kotlin(二)掌握基础知识:字符串和异常处理Kotlin(三)掌握基础知识:类Kotlin(四)掌握基础知识:线程(Thread.kt)详解协程是轻量级的线程,他降低了线程创建,线程切换,线程初始化的性能消耗;协程具有以下几个特点不是被操作系统内核所管理,而完全是由程序所控制; 协程在线程中是顺序运行的,协程的异步和并发操作是通过协程的挂起方法来执行的,协程挂起时不会阻塞线程;这点不同于线程,线程一旦挂起,该线程就会被阻塞; 协程运行在线程

2020-09-21 19:50:03 3206

转载 协程基础

协程基础这一部分包括基础的协程概念。第一个协程程序运行以下代码:import kotlinx.coroutines.*​fun main() { GlobalScope.launch { // 在后台启动一个新的协程并继续 delay(1000L) // 非阻塞的等待 1 秒钟(默认时间单位是毫秒) println("World!") // 在延迟后打印输出 } println("Hel..

2020-09-21 19:32:26 271

转载 Python3 注释

Python3 注释确保对模块, 函数, 方法和行内注释使用正确的风格Python中的注释有单行注释和多行注释:Python中单行注释以#开头,例如::# 这是一个注释 print("Hello, World!")多行注释用三个单引号'''或者三个双引号"""将注释括起来,例如:1、单引号(''')#!/usr/bin/python3 ''' 这是多行注释,用三个单引号 这是多行注释,用三个单引号 这是多行注释,用三个单引号 ''' print("Hello, Wor...

2020-09-21 16:39:00 127

转载 Java 空指针异常的若干解决方案

Java 中任何对象都有可能为空,当我们调用空对象的方法时就会抛出NullPointerException空指针异常,这是一种非常常见的错误类型。我们可以使用若干种方法来避免产生这类异常,使得我们的代码更为健壮。本文将列举这些解决方案,包括传统的空值检测、编程规范、以及使用现代 Java 语言引入的各类工具来作为辅助。运行时检测最显而易见的方法就是使用if (obj == null)来对所有需要用到的对象来进行检测,包括函数参数、返回值、以及类实例的成员变量。当你检测到null值时,可以...

2020-09-21 10:16:17 1324

转载 HashMap底层实现和原理(源码解析)

Note:文章的内容基于JDK1.7进行分析,1.8做的改动文章末尾进行讲解。大家可以看一下:https://www.imooc.com/article/267756一、先来熟悉一下我们常用的HashMap1、概述HashMap基于Map接口实现,元素以键值对的方式存储,并且允许使用null 建和null 值, 因为key不允许重复,因此只能有一个键为null,另外HashMap不能保证放入元素的顺序,它是无序的,和放入的顺序并不能相同。HashMap是线程不安全的。2、继承关系

2020-09-19 16:23:22 195

转载 蓝牙协议栈开发板 STM32F1 跑蓝牙协议栈 --传统蓝牙搜索演示以及实现原理

零. 概述主要介绍下蓝牙协议栈开发板跑传统蓝牙搜索AT指令以及上位机操作步骤,以及原理一. 声明本专栏文章我们会以连载的方式持续更新,本专栏计划更新内容如下:第一篇:蓝牙综合介绍 ,主要介绍蓝牙的一些概念,产生背景,发展轨迹,市面蓝牙介绍,以及蓝牙开发板介绍。第二篇:Transport层介绍,主要介绍蓝牙协议栈跟蓝牙芯片之前的硬件传输协议,比如基于UART的H4,H5,BCSP,基于USB的H2等第三篇:传统蓝牙controller介绍,主要介绍传统蓝牙芯片的介绍,包括射频层(R

2020-09-19 16:07:41 558

转载 kotlin注解处理器插件kapt的使用

kapt是kotlin的注解处理器,用法很简单在 Kotlin 中则需要添加 kotlin-kapt 插件激活 kapt,并使用 kapt 替换 annotationProcessor:配置 在app build.gradle 中 激活apply plugin: 'kotlin-kapt'使用 dependencies { ... kapt "com.google.dagger:dagger-compiler:$dagger-version" .

2020-09-19 15:57:11 1979

转载 手把手教你使用Android APT

Annotation(注解)如果想学习APT(注解处理工具),那么就必须先了解Annotation的基础,对于不了解java注解基础的朋友们,请先学习java注解,再看本文。APTAPT(Annotation Processing Tool)是一种处理注释的工具,它对源代码文件进行检测找出其中的Annotation,使用Annotation进行额外的处理。Annotation处理器在处理Annotation时可以根据源文件中的Annotation生成额外的源文件和其它的文件(文件具体内容由A

2020-09-19 15:52:07 835

转载 带有 View 的 Android Room —— Kotlin

本文翻译自Android Room with a View - Kotlincodelab,较长。目录1.介绍推荐的 Architecture Components(架构组件)是什么?你将构建什么RoomWordSample架构概览你将学到什么你需要什么2.创建你的 app3.更新 gradle 文件4. 创建实体5. 创建DAO什么是DAO实现DAO6.LiveData 类7.添加 Room 数据库什么是 Room 数据...

2020-09-18 16:16:54 261

转载 androidStudio4.0 Settings->Plugins下载插件,插件列表加载不出来

解决 androidStudio Settings->Plugins下载插件,插件列表加载不出来点击设置,勾选Auto-detect proxy settings,输入网址 https://plugins.jetbrains.com/在进行搜索,如下,可以看到对应的安装列表。

2020-09-18 11:11:55 1213 3

转载 Kotlin的数据类,枚举类,单例类

简述Kotlin相对与Java,它给我们提供了很多的语法糖,供我们方便使用,提高我们的开发效率;数据类Java中的常用的Bean类,每一个变量我们都需要写getter,setter方法,却都要手动实现很多方法;尽管可以用工具帮我们完成,但是代码显得很臃肿,不灵活。特别是当我们需改其中某一个成员的时候,就得去一堆代码里面寻找对应的修改。public class JavaDemoBean { private String param1; private String par

2020-09-17 19:23:20 259

转载 Kotlin 数据类

功能 自动声明与构造函数入参同名的属性字段 自动实现每个属性字段的get/set方法 自动提供equals方法,比较两个数据对象是否相等 自动提供copy方法,允许完整复制某个数据对象 提供toString方法 约束条件 数据类必须有主构造函数,且至少一个输入参数 声明与输入参数同名的属性,即输入参数前面添加关键字val或者var 数据类不能是基类也不能是子类,不能是抽象类,不能是内部类,不能是密封类 实例data .

2020-09-17 19:07:13 133

转载 Android 配置kotlin单元测试

最近开始学习Kotlin,将之前的一个验证证书的题目里全部改成用Kotlin来写,其中有使用到单元测试,故在这里对Kotlin进行单元测试的配置进行记录。首先build.gradle里添加单元测试依赖:apply plugin: 'kotlin-android'android { sourceSets { //这里主要是添加存放kotlin的测试文件夹,不然我们在test里创建kotlin文件夹是没什么效果的 test.java.srcDirs += 'src/

2020-09-16 16:13:04 832

转载 kotlin和java混合开发总结

声明:本文是作者AWeiLoveAndroid原创,版权归作者AWeiLoveAndroid所有,侵权必究。如若转发,请注明作者和来源地址!未经授权,严禁私自转载!我本来是不想学习kotlin的,但是现在的形势,很多公司都在使用kotlin开发,可以说学会kotlin也是无奈之举,既然是潮流,谷歌也在大力推广,所以还是只能硬着头皮逼迫自己学一下,也能更快适应公司的需要。正所谓:“识时务者为俊杰”,改变不了公司的发展,那就改变自己。本文首发在 慕课网,转载请注明原文链接和作者信息。废话少说,直接上正题

2020-09-15 15:48:51 1415

转载 @JvmStatic 和 @JvmField 在kotlin中的使用

这是关于 Java 静态方法和静态变量的一段代码:public class TestStatic { private int otherField = 0; public static final BigInteger BIG_INTEGER = BigInteger.ONE; public static void method() { System.out.println("call method"); } } 我们把它转换成 K...

2020-09-15 15:22:06 594

转载 Kotlin精髓

前言从谨慎地在项目中引入kotlin到全部转为kotlin开发我们用了大概半年的时间。这中间经历了从在一个小功能中尝试使用到完全使用kotlin完成了大版本开发的过程。使用方法也从仅仅地用java风格写kotlin代码,慢慢地变成使用kotlin风格去编写代码。 转载请注明来源「申国骏」到目前为止,kotlin的引入至少没有给我们带来不必要的麻烦,在慢慢品尝kotlin语法糖的过程中,我们领略到了能给开发者真正带来好处的一些特性。本文就是对这些我们认为是精髓的一些特性的进行总结,希望能给还在犹...

2020-09-15 14:42:04 194

转载 Kotlin几个很有用的关键字

1.object 用于创建单例模式object Resource { val name = "Rocker"}2.lazy 、lateinit 用于延迟初始化,第一次使用时再实例化val name: String by lazy { "Rocker"}lateinit var name:String;fun testName(){ name = "Rocker"}两者区别:by lazy 修饰val的变量lateinit 修饰var的变量..

2020-09-15 14:39:17 114

转载 Android BLE 数据转换方法集合

Android BLE 框架发布,功能全面,简单易用:https://github.com/a1anwang/okble______________________________________________________________(1) byte[] 数组转成 16进制字符串 private final static byte[] hex = "0123456789ABCDEF".getBytes(); // 从字节数组到十六进制字符串转 public s...

2020-09-15 11:17:04 223

转载 蓝牙整体框架学习整理

从来也没写过技术博客,最近在男票的积极鼓励下,在系统学习蓝牙,写下今天的收获,持续更新中~~~1.蓝牙的系统架构,从底到上:如下图:按照我自己看的文章总结,上层的大多是Profile底层的大多是:Protocol详细如下图:以上资料整理自wikipedia.后续会根据使用场景提取某些profile和protocol之间的关系。今天学习了马建仓老师书里面的第5章 HCI协议下面列一下这部分的框架,前面几章也都看了,但因为比较偏底层,偏硬件和射频...

2020-09-14 20:55:39 755

转载 蓝牙中的四种音频编码:Apt-X、SBC、AAC、LDAC

以下当前较为常用的几种音频传输格式和支持厂商。下面按照编码的码率由低到高列举。 SBC(Sub-band coding,子带编码) 最早的格式应该是SBC,SBC是A2DP(Advanced Audio Distribution Profile,蓝牙音频传输协议)协议强制规定的编码格式。所有的蓝牙都会支持这个协议,所以所有的蓝牙音频芯片也会支持这个协议。SBC编码在传输时的码率具体参数未找到,根据sony官网宣传给出的资料,是:328Kbps,44.1KHZ。这个码率其实和高品质的MP3差不多。.

2020-09-14 20:45:15 6492 1

转载 Bluetooth以及音频协议 基础知识学习

蓝牙协议是蓝牙设备间交换信息所应该遵守的规则。与开放系统互联(OSI)模型一样,蓝牙技术的协议体系也采用了分层结构,从底层到高层形成了蓝牙协议栈,各层协议定义了所完成的功能和使用数据分组格式,以保证蓝牙产品间的互操作性。一、首先来看一下蓝牙的架构:1、无线射频单元(Radio):负责数据和语音的发送和接收,特点是短距离、低功耗。蓝牙天线一般体积小、重量轻,属于微带天线。2、基带或链路控制单元(LinkController):进行射频信号与数字或语音信号的相互转化,实现基带协议和其它的底层连接规

2020-09-14 20:26:16 1586

转载 A2DP & AVRCP,蓝牙音频协议的兄弟组合(1)

A2DP和AVRCP是传统蓝牙的两种高层应用协议。一般来讲,在市面的应用产品中,支持A2DP的蓝牙产品都有支持AVRCP。那么,两者是怎样配合使用?又各自扮演者什么角色呢?又是分别如何实现的呢?1)A2DP,Advanced Audio Distribution Profile。规定了使用蓝牙非同步传输信道方式,传输高质量音频护具的协议栈软件及使用方法。例如可以使用立体声蓝牙耳机来收听来自音乐播放器的音乐;2)AVRCP,Audio Video Remote Control Profile。顾名

2020-09-14 20:21:54 6357

转载 ARM平台上蓝牙协议栈Bluez的移植使用和配置

前言blue简介蓝牙(Bluetooth),或称为蓝芽,是一种新式的无线传送协议,最初由爱立信创制,后来由蓝牙特别兴趣组订定技术标准。据说因为此技术尚在萌芽的阶段,故将Bluetooth以“蓝牙”的中文译名在台湾地区进行商业的注册,不过根据英文本身的意义直译,还是“蓝牙”较为贴切。蓝牙用于在不同的设备之间进行无线连接,例如连接计算机和外围设施,如:打印机、键盘等,又或让个人数字助理(PDA)与其它附近的PDA或计算机进行通信。目前市面上具备蓝牙技术的手机选择非常丰富,可以连接到计算机、PDA甚至

2020-09-14 17:10:26 2759

转载 新的蓝牙应用调试方法 – 使用iOS设备进行调试

如果你正在iOS平台上开发蓝牙应用程序,或者为iOS应用程序进行对端设备的嵌入式固件开发,那么本文将告诉你如何使用iOS设备和macOS设备建立调试系统,如何获取iOS设备与对端设备之间所进行通信的蓝牙数据包。 您需要:iOS 13设备与数据线(充电线)macOS台式计算机或笔记本计算机Apple开发者计划帐户在目标iOS设备上安装配置文件复制以下链接并将其粘贴到目标iOS设备的浏览器中。https://developer.apple.com/bu...

2020-09-14 17:00:25 2052

转载 Bluetooth GATT Profile Spec 解读

ATT(Attribute) protocol为所有基于LE link的应用提供了一个底层的框架。它定义了server与client,定义了属性以及client如何获取server端的一系列属性。Generic Attribute Profile作为一个通用的基于ATT的profile,为上层应用提供了一个基本的服务框架(service framework),使得所有基于LE的应用都可以将自身的功能映射到这个框架中来。 相比ATT protocol,GATT Profile定义了以下更为具体的概念...

2020-09-14 16:40:29 555

转载 Kotlinkotlin二进制与十六进制之间的转化

JAVA Code: public class HexUtils { /** * 十六进制String转换成Byte[] * @param hexString the hex string * @return byte[] */ public static byte[] hexStringToBytes(String hexString) { if (hexString == null || hexString.equals("")) { ret..

2020-09-11 20:18:43 3285

转载 高通 wlan 调试总结随笔

高通 wlan 调试总结随笔 1. 进入ftm模式 2. 抓取wifi log 2.1 抓取 Android log 2.1.1 How to enable wifi verbose log? 2.1.2 How to collect adb log and kernel log in one file? 2.1.3 How to open wpa_supplicant debug log? 2.2 抓取 Tcpdump 2.3 抓取 w

2020-09-11 15:55:03 5585 2

转载 Android NDK详解

https://mlxchange.xyz/2020/08/05/NDK详解/

2020-09-10 11:15:59 108

转载 上次没砍我的,这次我又来了。看完这篇还不明白Binder你砍我(一)

概述什么是Binder?Binder是Android程序中实现跨进程通信(IPC)的一种方式。指两个进程之间进行数据交换的过程为什么要跨进程通信?因为有进程隔离,进程隔离指的是,一个进程不能直接操作或者访问另一个进程。也就是进程A不可以直接访问进程B的数据。那么如何进行跨进程通信呢?我们都知道,Android系统的内核是Linux,所以我们首先了解一下Linux上是如何实现的把。Linux上的跨进程通信机制在Linux中有这么几种IPC机制,有管道(pipe)、信号(sinal)、消

2020-09-10 10:44:14 448 2

转载 看完这篇还不明白Handler你砍我!

本篇文章来自Mlx的投稿,和大家分享了Handler相关的绝密内容,相信会对大家有所帮助!同时也感谢作者贡献的精彩文章!Mlx的博客地址:https://mlxchange.xyz// 前言 /Handler可以说小伙伴们用的非常多了,可以说Handler是支撑整个Android系统运行的基础,本质上Android系统都是由事件驱动的。而处理事件的核心就在于Handler。接下来我们就从简单的使用,到源码分析让你彻彻底底明白Handler的本质。不会再让你发出为...

2020-09-10 10:40:01 234

转载 BAT这样的大公司为什么面试经常拿ThreadLocal考验求职者

什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数据,线程之间的变量互不干扰,在高并发场景下,可以实现无状态的调用。ThreadLocal提供了线程安全的另一种思路,我们平常说的线程安全主要是保证共享数据的并发访问问题,通过sychronized锁或者CAS无锁策略来保证数据的一致性。ThreadLocal结构图从上面的结构图,我们已经窥见ThreadLocal的核心机制: 每个Thread线...

2020-09-10 10:17:53 89

转载 那些年,我们一起经历过的 Android 系统性能优化

Android 系统性能优化,最近几年 ,Google 之外,绝对是中国的手机厂商参与得最深最广。不光深挖系统、场景,还要和 Top 应用合作优化,和各种流氓应用勾心斗角。同时 Google 也在不断吸收一些 common 的优化经验,应用到每年的大版本更新中去。接下来简单梳理一下,近几年来各大手机厂商拿出来宣传的性能优化技术。1 华为 - 18 个月不卡顿长时间使用卡顿,成为 Android 手机的通病,各个手机厂商应该都有专项来投入这个问题,华为是首个公开把这个问题展示到了台前,并成了一段时

2020-09-10 10:14:39 6183

转载 Android 中的卡顿丢帧原因概述 - 方法论

Android 手机使用中的卡顿问题 , 一般来说手机厂商和 App 开发商都会非常重视 , 所以不管是手机厂商还是 App 开发者 , 都会对卡顿问题非常重视 , 内部一般也会有专门的基础组或者优化组来进行优化 .目前市面上有一些非常棒的第三方性能监控工具 , 比如腾讯的 Matrix ; 手机厂商一般也会有自己的性能监控方案 , 由于可以修改源码和避免权限问题 , 所以手机厂商可以拿到更多的数据 , 分析起来也会更方便一些.说回流畅度 , 其实就是操作过程中的丢帧 , 本来一秒中画面需要更新 6

2020-09-10 10:04:36 1116

转载 BLE 配对流程梳理

blog.csdn.netBLE 配对流程梳理21-26 分钟BLE配对是一个三阶段的过程。前两个阶段总是使用,可能跟随着一个可选的传输特定秘钥分配的阶段。阶段1:配对特征交换阶段2:短期秘钥(STK)生成阶段3:传输特定秘钥分配STK 生成规则:1: Just work 没有加密 TK=0x002: passkey entry 密码输入如果 passkey 是 ‘019655’ then TK shall be 0x000000000000000000000.

2020-09-09 19:26:30 1098 3

转载 BLE的广播和数据报文结构分析

低功耗蓝牙BLE之报文这篇文档是来自zzfenglin的博客。报文报文是链路层的基石。报文非常简单,它是带有标签的数据,由一个设备发送,一个或多个设备接收。标签指明了数据由谁发出,以及应该由哪些设备接收。如上图所示,给出了报文的基本结构,适用于所有报文,无论其用途是什么。报文的开始是一小段交替序列,称为前导。之后是接入地址,接收机用它将报文和背景噪音区分开来。接入地址之后是报头和长度字节。再之后是报文的净荷,以及用于确保净荷正确性的循环冗余校验(CRC)。...

2020-09-09 19:07:36 1399

转载 【蓝牙】 HCI log分析工具----Frontline ComProbe Protocol Analysis System使用教程

Frontline ComProbe Protocol Analysis System是Frontline提供的一款蓝牙协议log分析工具。下面介绍下它的使用方法。一、首先,选择要打开的HCI log,并选择log类型为BtSnoop Files,即以*.log结尾的文件。二、打开log文件后,选择Frame Display就可以看到我们抓取的HCI log了三、Frame Display窗口中有很多Tab,将协议栈中各类协议分类显示,例如:HCI相关的log放在HCI.

2020-09-08 14:07:14 10645 4

转载 华为手机获取hci log方法

针对目前有些手机找不到btsnoop_hci.log情况,现在提供一个参考方案,实测适用huawei p201)、让手机进入开发者模式,进入开发人员选项,打开蓝牙HCI日志收集,打开USB调试2)、使用usb线连接安卓手机,选择仅充电模式3)、打开dos命令窗口,进入adb工具目录,运行“adb devices”命令,来连接设备连接的时候,会向手机端请求权限,此时设备为unauthorized,在手机端确定即可,连接上之后如下图拉取hci log,使用“adb pull /dat

2020-09-08 14:05:00 2760

Android大厂面试题库

题目来自sohu,qq,taobao,baidu,360等大厂,可以助您顺利通过前两轮技术面试。

2018-06-01

Android面试指导,常见的面试题以及解答

Android面试指导 包括算法,数据接口,android基本知识,java等

2018-06-01

Mocor MMI VCard Interface User Guide.doc

Mocor MMI VCard Interface User Guide.doc 文档说明 本文档描述了VCard文件的管理,以及基于VCard的开发与使用。 阅读对象 本文档适合MMI开发人员使用。 内容介绍 本文档包括三个章节,分别为:  第一章:概述。简单介绍了VCard接口模块的特点、及软件架构;  第二章:数据类型。介绍了VCard接口所涉及到的各种数据类型,如枚举、结构等;  第三章:API函数。详细描述了VCard接口包含的所有API函数的定义及相关说明。

2010-11-16

Mocor MMI Camera Interface User Guide

Mocor MMI Camera Interface User Guide 本文档包括一个章节,分别为:  第一章:概述。描述了MMI Camera的功能以及在系统中的位置;  第二章:API函数。详细描述了Camera接口包含的所有API函数的定义及相关说明;

2010-11-15

MTK GUI PPT

MTK GUI MTK 开发介绍得非常详细

2010-11-10

Catcher使用方法.pdf

Catcher使用方法.pdf MTK 开发专用

2010-11-10

手机模块(ITM100)收发短信流程.doc

手机模块(ITM100)收发短信流程.doc

2010-11-09

MMK_Kernel软件API接口说明书.pdf

MMK_Kernel软件API接口说明书.pdf

2010-11-09

展讯MMI软件开发平台_最完整版.ppt

展讯MMI软件开发平台_最完整版.ppt

2010-11-09

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除