{{sellerTotalView > 1 ? __("sellers", {number: sellerTotalView}) : __("seller", {number: sellerTotalView}) }}, {{numTotalView > 1 ? __("items", {number: numTotalView}) : __("item", {number: numTotalView}) }}
free FREE

Change Your Zip Code

Inventory information and delivery speeds may vary for different locations.

Location History

{{email ? __('Got it!') : __('Restock Alert')}}

We will notify you by email when the item back in stock.

Cancel
Yami

Jingdong book

深入理解Android 5 源代码

{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}

深入理解Android 5 源代码

{{__(":people-members", {'people': item.limit_people_count})}} {{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ item.invalid_price }} {{ itemDiscount }}
Ends in
{{ itemCurrency }}{{ item.valid_price }}
{{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }}
{{ itemDiscount }}
{{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }} {{ itemCurrency }}{{ item.invalid_price }} {{itemDiscount}}
{{ itemCurrency }}{{ item.valid_price }}
Sale ends in
Sale will starts after Sale ends in
{{ getSeckillDesc(item.seckill_data) }}
{{ __( "Pay with Gift Card to get sale price: :itemCurrency:price", { 'itemCurrency' : itemCurrency, 'price' : (item.giftcard_price ? priceFormat(item.giftcard_price) : '0.00') } ) }} ({{ itemCurrency }}{{ priceFormat(item.giftcard_price / item.bundle_specification) }}/{{ item.unit }}) Details
Best before

Currently unavailable.

We don't know when or if this item will be back in stock.

Unavailable in your area.
Sold Out

Details

Full product details
Editer Recommend

新版本Android 5.0
全面讲解了Android 5源程序的核心技术,包括Java Native Interface系统,HAL系统,IPC通信机制,Binder对象和Java接口,init进程和Zygote进程,System进程和应用程序进程,Activity组件,应用程序管理服务,Content Provider、Broadcast系统,电源管理系统,电话系统,短信系统、传感器系统、SEAndroid系统和ART系统等核心知识。
Content Description

本书共分20章,循序渐进地分析了Android系统的基本源代码,依次讲解了Android系统介绍,获取并编译Android源代码,分析Java Native Interface系统,分析HAL系统,分析IPC通信机制,分析Binder对象和Java接口,分析ServiceManager和MessageQueue,init进程和Zygote进程,System进程和应用程序进程,分析Activity组件,应用程序管理服务分析,Content Provider、Broadcast(广播)系统,电源管理系统分析,分析WindowManagerService系统、分析电话系统,分析短信系统、Sensor传感器系统详解、分析SEAndroid系统和分析ART系统等核心知识。本书内容言简意赅,讲解方法通俗易懂,不仅适合有一定基础的读者学习,也特别有利于初学者学习。
本书适合Android初学者、Android爱好者、Android底层开发人员、Android应用开发人员学习,也可以作为相关培训学校和大专院校相关专业师生的教学用书。
Author Description

李骏,清华大学电子信息工程专业学士。较早进入Android开发领域。有多年的Android开发经验,熟练使用Java和C/C++进行软件开发。熟悉Android层次结构和Linux驱动层的结构及其上的开发,有着丰富的Android底层和驱动层的优化、移植经验,擅长利用JNI技术开发 Android上的应用程序。曾带领团队利用NDK技术成功开发过具有库仑计电池芯片的电池管理软件,以及在Android上成功移植人脸识别程序,目前在凹凸电子担任Android架构师。
Catalogue

第1章 Android系统介绍 1
1.1 Android系统成功的秘诀 1
1.1.1 获取了业界的广泛支持 1
1.1.2 研发阵容强大 1
1.1.3 为开发人员“精心定制” 1
1.1.4 开源 2
1.2 剖析Android系统架构 2
1.2.1 底层操作系统层(OS) 3
1.2.2 各种库(Libraries)和Android
运行环境(RunTime) 3
1.2.3 Application Framework(应用
程序框架) 3
1.2.4 顶层应用程序(Application) 4
1.3 五大组件 4
1.3.1 Activity界面 4
1.3.2 Intent和Intent Filters切换 4
1.3.3 Service(服务) 5
1.3.4 Broadcast Receiver发送广播 5
1.3.5 用Content Provider存储数据 6
1.4 进程和线程 6
1.4.1 什么是进程 6
1.4.2 什么是线程 6
第2章 获取并编译Android源代码 7
2.1 获取Android源代码 7
2.1.1 在Linux系统中获取Android
源代码 7
2.1.2 在Windows平台获取Android
源代码 8
2.2 分析Android源代码结构 10
2.2.1 总体结构 11
2.2.2 应用程序部分 12
2.2.3 应用程序框架部分 13
2.2.4 系统服务部分 13
2.2.5 系统程序库部分 15
2.2.6 硬件抽象层部分 17
2.3 Android源代码提供的接口 18
2.3.1 暴露接口和隐藏接口 18
2.3.2 调用隐藏接口 23
2.4 编译源代码 25
2.4.1 搭建编译环境 25
2.4.2 在模拟器中运行 27
2.5 编译源代码生成SDK 27
第3章 分析Java Native Interface
系统 30
3.1 JNI基础 30
3.1.1 JNI的功能结构 30
3.1.2 JNI的调用层次 30
3.1.3 分析JNI的本质 31
3.2 分析MediaScanner 32
3.2.1 分析Java层 32
3.2.2 分析JNI层 37
3.2.3 分析Native(本地)层 38
3.3 分析Camera系统的JNI 44
3.3.1 Java层预览接口 45
3.3.2 注册预览的JNI函数 46
3.3.3 C/C++层的预览函数 48
第4章 分析HAL系统 49
4.1 HAL基础 49
4.1.1 推出HAL的背景 49
4.1.2 HAL的基本结构 50
4.2 分析HAL module架构 51
4.2.1 hw_module_t 52
4.2.2 结构hw_module_methods_t
的定义 52
4.2.3 hw_device_t结构 53
4.3 分析文件hardware.c 53
4.3.1 寻找动态链接库的地址 53
4.3.2 数组variant_keys 54
4.3.3 载入相应的库 54
4.3.4 获得hw_module_t结构体 54
4.4 分析硬件抽象层的加载过程 55
4.5 分析硬件访问服务 58
4.5.1 定义硬件访问服务接口 58
4.5.2 具体实现 59
4.6 分析Android官方实例 60
4.6.1 获取实例工程源代码 60
4.6.2 直接调用Service方法的
实现代码 61
4.6.3 通过Manager调用Service
的实现代码 64
4.7 HAL和系统移植 66
4.7.1 移植各个Android部件
的方式 66
4.7.2 设置设备权限 67
4.7.3 init.rc初始化 70
4.7.4 文件系统的属性 70
第5章 分析IPC通信机制 72
5.1 Binder机制概述 72
5.2 分析Binder驱动程序 73
5.2.1 分析数据结构 73
5.2.2 分析设备初始化 82
5.2.3 打开Binder设备文件 83
5.2.4 内存映射 85
5.2.5 释放物理页面 89
5.2.6 分配内核缓冲区 89
5.2.7 释放内核缓冲区 91
5.2.8 查询内核缓冲区 93
5.3 Binder封装库 93
5.3.1 类BBinder 94
5.3.2 类BpRefBase 96
5.3.3 类IPCThreadState 97
5.4 初始化Java层Binder框架 99
5.5 分析MediaServer的通信机制 101
5.5.1 MediaServer的入口函数 101
5.5.2 ProcessState 102
5.5.3 defaultServiceManager 103
5.5.4 注册MediaPlayerService 108
5.5.5 分析StartThread Pool和
join Thread Pool 117
第6章 分析Binder对象和Java接口 119
6.1 分析实体对象(binder_node) 119
6.2 分析本地对象(BBinder) 121
6.3 分析引用对象(binder_ref) 129
6.4 分析代理对象(BpBinder) 131
6.5 分析Java接口 134
6.5.1 获取Service Manager 134
6.5.2 分析ActivityManagerService
的Java层 138
第7章 分析ServiceManager和
MessageQueue 151
7.1 分析ServiceManager 151
7.1.1 分析主入口函数 151
7.1.2 打开Binder设备文件 152
7.1.3 注册处理 154
7.1.4 创建Binder实体对象 156
7.1.5 尽职的循环 157
7.1.6 将信息注册到
ServiceManager 162
7.1.7 分析MediaPlayerService
和Client 164
7.2 获得Service Manager接口 169
7.3 分析MessageQueue 171
7.3.1 创建MessageQueue 171
7.3.2 提取消息 171
7.3.3 分析函数nativePollOnce 174
第8章 init进程和Zygote进程 182
8.1 分析init进程 182
8.1.1 分析入口函数 182
8.1.2 分析配置文件 185
8.1.3 分析Service 190
8.1.4 解析on字段的内容 195
8.1.5 init控制Service 197
8.1.6 控制属性服务 204
8.2 分析Zygote(孕育)进程 210
8.2.1 Zygote基础 211
8.2.2 分析Zygote的启动过程 211
第9章 System进程和应用程序进程 224
9.1 分析System进程 224
9.1.1 启动System进程前
的准备工作 224
9.1.2 分析SystemServer 225
9.1.3 分析EntropyService 227
9.1.4 分析DropBoxManager
Service 229
9.1.5 分析DiskStatsService 234
9.1.6 分析DeviceStorageManager
Service(监测系统内存存储
空间的状态) 237
9.1.7 分析SamplingProfiler
Service 239
9.2 分析应用程序进程 246
9.2.1 创建应用程序 246
9.2.2 启动线程池 254
9.2.3 创建信息循环 255
第10章 分析Activity组件 258
10.1 Activity基础 258
10.1.1 Activity状态 258
10.1.2 剖析Activity中的
主要函数 259
10.2 分析Activity的启动源代码 260
10.2.1 Launcher启动应用程序 261
10.2.2 返回ActivityManagerService
的远程接口 262
10.2.3 解析intent的内容 263
10.2.4 分析检查机制 265
10.2.5 执行Activity组件的操作 274
10.2.6 将Launcher推入Paused
状态 279
10.2.7 处理消息 281
10.2.8 暂停完毕 282
10.2.9 建立双向连接 285
10.2.10 启动新的Activity 289
10.2.11 通知机制 291
10.2.12 发送消息 292
第11章 应用程序管理服务——PackageManagerService分析 295
11.1 PackageManagerService概述 295
11.2 系统进程启动 296
11.3 开始运行 296
11.4 扫描APK文件 306
11.5 解析并安装文件 307
11.6 启动系统默认Home应用程序
Launcher 323
11.6.1 设置系统进程 323
11.6.2 启动Home应用程序 324
11.6.3 启动com.android.launcher2. Launcher 330
11.6.4 加载应用程序 333
11.6.5 获得Activity 336
第12章 Content Provider存储机制 341
12.1 Content Provider基础 341
12.1.1 Content Provider在应用
程序中的架构 341
12.1.2 Content Provider的常用
接口 342
12.2 启动Content Provider 343
12.2.1 获得对象接口 343
12.2.2 存在校验 344
12.2.3 启动Android应用程序 348
12.2.4 根据进程启动Content
Provider 348
12.2.5 处理消息 352
12.2.6 具体启动 354
12.3 Content Provider数据共享 356
12.3.1 获取接口 356
12.3.2 创建CursorWindow对象 358
12.3.3 数据传递 361
12.3.4 处理进程通信的请求 362
12.3.5 数据操作 367
第13章 分析广播机制源代码 370
13.1 Broadcast基础 370
13.2 发送广播信息 371
13.2.1 intent描述指示 371
13.2.2 传递广播信息 371
13.2.3 封装传递 372
13.2.4 处理发送请求 372
13.2.5 查找广播接收者 373
13.2.6 处理广播信息 375
13.2.7 检查权限 382
13.2.8 处理的进程通信请求 384
13.3 分析BroadCastReceiver 386
13.3.1 MainActivity的调用 386
13.3.2 注册广播接收者 387
13.3.3 获取接口对象 388
13.3.4 处理进程间的通信请求 390
第14章 分析电源管理系统 392
14.1 Power Management架构基础 392
14.2 分析Framework层 392
14.2.1 文件PowerManager.java 393
14.2.2 提供PowerManager功能 393
14.3 JNI层架构分析 410
14.3.1 定义了两层之间的
接口函数 410
14.3.2 与Linux Kernel层
进行交互 411
14.4 Kernel(内核)层架构分析 411
14.4.1 文件power.c 412
14.4.2 文件earlysuspend.c 414
14.4.3 文件wakelock.c 414
14.4.4 文件resume.c 416
14.4.5 文件suspend.c 416
14.4.6 文件main.c 417
14.4.7 proc文件 417
14.5 wakelock和early_suspend 418
14.5.1 wakelock的原理 418
14.5.2 early_suspend的原理 419
14.5.3 Android休眠 419
14.5.4 Android唤醒 421
14.6 Battery电池系统架构和管理 421
14.6.1 实现驱动程序 422
14.6.2 实现JNI本地代码 422
14.6.3 Java层代码 423
14.6.4 实现Uevent部分 424
14.7 JobScheduler节能调度机制 428
14.7.1 JobScheduler机制的
推出背景 428
14.7.2 JobScheduler的实现 428
14.7.3 实现操作调度 429
14.7.4 封装调度任务 431
第15章 分析WindowManagerService
系统 434
15.1 WindowManagerService基础 434
15.2 计算Activity窗口的大小 435
15.2.1 实现View遍历 436
15.2.2 函数relayoutWindow 446
15.2.3 函数relayoutWindow 447
15.2.4 拦截消息的处理类 466
15.2.5 判断是否计算过 477
第16章 分析电话系统 482
16.1 Android电话系统详解 482
16.1.1 电话系统简介 482
16.1.2 电话系统结构 483
16.1.3 驱动程序介绍 485
16.1.4 RIL接口 486
16.1.5 分析电话系统的实现流程 488
16.2 电话系统中的音频模块 493
16.2.1 音频系统结构 493
16.2.2 分析音频系统的层次 494
16.3 分析拨号流程 501
16.3.1 拨号界面 501
16.3.2 实现Phone应用 504
16.3.3 Call通话控制 507
16.3.4 静态方法调用 510
16.3.5 通话管理 512
16.3.6 dial拨号 514
16.3.7 状态跟踪 515
16.3.8 RIL消息“出/入”口 516
16.3.9 显示通话主界面 517
第17章 分析短信系统 518
17.1 短信系统的主界面 518
17.2 发送普通短信 520
17.3 发送彩信 530
17.4 接收短信 537
17.4.1 Java应用层的接收流程 538
17.4.2 Framework层的处理过程 540
第18章 Sensor传感器系统详解 542
18.1 Android传感器系统概述 542
18.2 Java层详解 543
18.3 Frameworks层详解 548
18.3.1 监听传感器的变化 548
18.3.2 注册监听 548
18.4 JNI层详解 556
18.4.1 实现Native(本地)函数 557
18.4.2 处理客户端数据 561
18.4.3 处理服务端数据 563
18.4.4 封装HAL层的代码 572
18.4.5 处理消息队列 576
18.5 HAL层详解 578
第19章 分析SEAndroid系统 585
19.1 SEAndroid概述 585
19.1.1 内核空间 587
19.1.2 用户空间 588
19.2 文件安全上下文 596
19.2.1 设置打包在ROM里面
的文件的安全上下文 597
19.2.2 设置虚拟文件系统的
安全上下文 600
19.2.3 设置应用程序数据文件的
安全上下文 601
19.3 进程安全上下文 612
19.3.1 为独立进程静态地设置
安全上下文 612
19.3.2 为应用程序进程设置
安全上下文 615
第20章 分析ART系统 621
20.1 对比Dalvik VM和ART 621
20.2 启动ART 623
20.2.1 运行app_process进程 624
20.2.2 准备启动 627
20.2.3 创建运行实例 632
20.2.4 注册本地JNI函数 633
20.2.5 启动守护进程 634
20.2.6 解析参数 635
20.2.7 初始化类、方法和域 641
20.3 分析主函数main 647
20.4 查找目标类 648
20.4.1 函数LookupClass() 648
20.4.2 函数DefineClass() 650
20.4.3 函数InsertClass() 653
20.4.4 函数LinkClass() 653
20.5 类操作 655
20.6 实现托管操作 656
20.7 加载OAT文件 660
20.7.1 产生OAT 660
20.7.2 创建ART虚拟机 661
20.7.3 解析启动参数并创建堆 663
20.7.4 生成指定目录文件 665
20.7.5 加载OAT文件 666
20.7.6 解析字段 668

Specifications

Brand Jingdong book
Brand Origin China

Disclaimer

Product packaging, specifications and price are subject to change without notice. All information about the products on our website is provided for information purposes only. Please always read labels, warnings and directions provided with the product before use.

View Full Terms of Use
Add to favorites
{{ $isZh ? coupon.coupon_name_sub : coupon.coupon_ename_sub | formatCurrency }}
{{__("Buy Directly")}} {{ itemCurrency }}{{ item.directly_price }}
Quantity
{{ quantity }}
{{ instockMsg }}
{{ limitText }}
{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}
Sold by JD@CHINA
Ship to
{{ __("Ship to United States only") }}
Free shipping over 69
Genuine guarantee

Added to Cart

Keep Shopping

More to Consider

{{ item.brand_name }}

{{ item.item_name }}

{{ item.currency }}{{ item.market_price }}

{{ item.currency }}{{ item.unit_price }}

{{ item.currency }}{{ item.unit_price }}

Coupons

{{ coupon.coupon_name_new | formatCurrency }}
Clip Clipped Over
{{ getCouponDescStr(coupon) }}
{{ coupon.use_time_desc }}
Expires soon {{ formatTime(coupon.use_end_time) }}

Share this item with friends

Cancel

Yami Gift Card

Get this exclusive deal when paying with gift card

Terms and Conditions

Gift card deals are special offers for selected products;

The gift card deals will automatically be activated if a customer uses gift card balance at check out and the balance is sufficient to pay for the total price of the shopping cart products with gift card deals;

You will not be able to activate the gift card deals if you choose other payment methods besides gift card. The products will be purchased at their normal prices;

If your account balance is not enough to pay for the products with gift card deals, you can choose to reload your gift card balance by clicking on the Reload button at either shopping cart page or check out page;

Products that have gift card deals can be recognized by a special symbol showing 'GC Deal';

For any additional questions or concerns, please contact our customer service;

Yamibuy reserves the right of final interpretation.

Sold by Yami

Service Guarantee

Yami Free Shipping over $49
Yami Easy Returns
Yami Ships from United States

Shipping

  • United States

    Standard Shipping is $5.99 (Excluding Alaska & Hawaii). Free on orders of $49 or more.

    Local Express is $5.99 (Available in Parts of CA, NJ, MA & PA). Free on orders of $49 or more.

    2-Day Express (Includes Alaska & Hawaii) starts at $19.99.

Return Policy

Yami is committed to provide our customers with a peace of mind when purchasing from us. Most items shipped from Yamibuy.com can be returned within 30 days of receipt of shipment (For Food, Beverages, Snacks, Dry Goods, Health supplements, Fresh Grocery and Perishables Goods, within 7 days of receipt of shipment due to damages or quality issues; To ensure that every customer receives safe and high-quality products, we do not provide refunds or returns for beauty products once they have been opened or used, except in the case of quality issues; Some products may have different policies or requirements associated with them, please see below for products under special categories, or contact Yami Customer Service for further assistance).
Thank you for your understanding and support.

Learn More

Sold by Yami

Terms and Conditions of Yami E-Gift Card

If you choose “Redeem automatically” as your delivery method, your gift card balance will be reload automatically after your order has been processed successfully;

If you choose “Send to Email”as your delivery method, the card number and CVV will be sent to the email address automatically;

Any user can use the card number and CVV to redeem the gift card, please keep your gift card information safely. If you have any trouble receiving email, please contact Yami customer service;

Yami gift card can be used to purchase both Yami owned or Marketplace products;

Yami gift card will never expire;

Yami gift card balance does not have to be used up at once;

All rights reserved by Yami.

Return Policy

Gift card that has already been consumed is non-refundable.

Sold by JD@CHINA

Service Guarantee

Yami Free Shipping over $49
Yami Easy Returns
Yami Ships from United States

Shipping

  • United States

    Standard Shipping is $5.99 (Excluding Alaska & Hawaii). Free on orders of $49 or more.

    Local Express is $5.99 (Available in Parts of CA, NJ, MA & PA). Free on orders of $49 or more.

    2-Day Express (Includes Alaska & Hawaii) starts at $19.99.

Return Policy

You may return product within 30 days upon receiving the product. Items returned must be new in it's original packing, including the original invoice for the purchase. Customer return product at their own expense.

Sold by JD@CHINA

Service Guarantee

Yami Cross-store Free Shipping over $69
Yami 30-days Return

Yami-China FC

Yami has a consolidation warehouse in China which collects multiple sellers’ packages and combines to one order. Our Yami consolidation warehouse will directly ship the packages to your door. Cross-store free shipping over $69.

Return Policy

You may return products within 30 days upon receiving the products. Sellers take responsibilities for any wrong shipment or missing items. Packing needs to be unopened for any other than quality issues return. We promise to pack carefully, but because goods are taking long journey to destinations, simple damages to packaging may occur. Any damages not causing internal goods quality problems are not allowed to return. If you open the package and any quality problem is found, please contact customer service within three days after receipt of goods.

Shipping Information

Yami Consolidation Service Shipping Fee $9.99(Free shipping over $69)

Sellers in China will ship their orders within 1-2 business days once the order is placed. Packages are sent to our consolidation warehouse in China and combined there. Our Yami consolidation warehouse will directly ship the packages to you via UPS. The average time for UPS to ship from China to the United States is about 10 working days and it can be traced using the tracking number. Due to the pandemic, the delivery time may be delayed by about 5 days. The package needs to be signed by the guest. If the receipt is not signed, the customer shall bear the risk of loss of the package.

Sold by JD@CHINA

Service Guarantee

Free shipping over 69
Genuine guarantee

Shipping

Yami Consolidated Shipping $9.99(Free shipping over $69)


Seller will ship the orders within 1-2 business days. The logistics time limit is expected to be 7-15 working days. In case of customs clearance, the delivery time will be extended by 3-7 days. The final receipt date is subject to the information of the postal company.

Yami Points information

All items are excluding from any promotion or points events on Yamibuy.com

Return Policy

You may return product within 30 days upon receiving the product. Items returned must be new in it's original packing, including the original invoice for the purchase. Customer return product at their own expense.

Yami

Download the Yami App

Back Top

Recommended for You

About the brand

Jingdong book

为您推荐

Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折

Reviews{{'('+ commentList.posts_count + ')'}}

Have your say. Be the first to help other guests.

Write a review
{{ totalRating }} Write a review
  • {{i}} star

    {{i}} stars

    {{ parseInt(commentRatingList[i]) }}%

Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}Show Less

{{ strLimit(comment,800) }}Show more

Show Original

{{ comment.content }}

Yami
Show All

{{ formatTime(comment.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}
Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}Show Less

{{ strLimit(comment,800) }}Show more

Show Original

{{ comment.content }}

Yami
Show All

{{ formatTime(comment.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}

No related comment~

Review

Yami Yami

{{ showTranslate(commentDetails) }}Show Less

{{ strLimit(commentDetails,800) }}Show more

Show Original

{{ commentDetails.content }}

Yami
Show All

{{ formatTime(commentDetails.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ commentDetails.likes_count }} {{ commentDetails.likes_count }} {{ commentDetails.reply_count }} {{commentDetails.in_user==uid ? __('Delete') : __('Report')}}

Please write at least one word

Comments{{'(' + replyList.length + ')'}}

Yami Yami

{{ showTranslate(reply) }}Show Less

{{ strLimit(reply,800) }}Show more

Show Original

{{ reply.reply_content }}

{{ formatTime(reply.reply_in_dtm) }}

{{ reply.reply_likes_count }} {{ reply.reply_likes_count }} {{ reply.reply_reply_count }} {{reply.reply_in_user==uid ? __('Delete') : __('Report')}}

Please write at least one word

Cancel

That’s all the comments so far!

Write a review
How would you rate this item?

Please add your comment.

  • A nice nickname will make your comments more popular!
  • The nickname in your account will be changed to the same as here.
Thanks for your review
Our community rely on great reviews like yours to find the best of Asia.

Report

If you find this content inappropriate and think it should be removed from the Yami.com site, let us know please.

Cancel

Are you sure to delete your review?

Cancel

You’ve Recently Viewed

About the brand

Jingdong book