{{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数据库应用编程:为企业开发数据驱动Android应用

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

Android数据库应用编程:为企业开发数据驱动Android应用

{{__(":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
Content Description

学习为企业系统构建数据驱动的Android应用程序

Android设备已经超越消费应用范畴,进入企业领域。如果你准备着手构建与企业系统集成的数据驱动型Android应用程序,那么本书无疑是理想之选。 Android数据库应用编程——为企业开发数据驱动Android应用 透彻讲述如何使用内容提供器共享数据、使用适配器显示数据以及使用Web服务传输数据,介绍集成应用程序和现有企业系统、保护数据以及同步数据的方法。通过阅读本书,你将深入理解如何创建当今企业所需的数据密集型应用程序。

《Android数据库应用编程:为企业开发数据驱动Android应用》主要内容

◆ 重点讨论为基于REST的应用程序创建和使用简单数据库以便缓存和同步结果

◆ 介绍内容提供器、REST、并发和网络

◆ 详解使用Hibernate创建REST风格的Web服务以及将其连接到Android

◆ 通过避免在Internet上执行CRUD操作来提高性能

◆ 开始编写连接到Android的后端云服务

◆ 介绍新的开源和通用同步框架(专门与Android API集成)

◆ 解决应用程序实现中的安全问题

Author Description

Zigurd Mednieks,是一位Android系统开发顾问,曾撰写多本Android软件开发书籍。


G. Blake Meike,是一位工程师、作家和教师,从Java和Android诞生之初,便开始使用这些技术。


Laird Dornin,担任一家重要无线运营商的架构师,曾参与构建移动Java操作系统,已与他人合著两本Android开发书籍。


Zane Pan,先后在多家大公司(包括DEC、Intuit、EMC及最近的Nokia)担任架构师。

Catalogue

第1章 Android平板和智能手机开发 1

1.1 Android是一个Java操作系统 2

1.2 工具和第一个Android应用程序 2

1.2.1 前提条件和准备工作 2

1.2.2 工具链测试驱动 4

1.3 一个代码库适应所有设备类型 4

1.3.1 以代码框架示例为起点 5

1.3.2 自动适应屏幕尺寸 10

1.4 组件、视图和生命周期 10

1.4.1 销毁并重建组件 11

1.4.2 MainActivity类 11

1.4.3 活动:用户交互的基本单元 11

1.4.4 Fragment:组织代码和UI的工具 16

1.4.5 PickFragment类 17

1.4.6 ItemFragment类 21

1.4.7 ItemDetailFragment类 24

1.5 整合Activity、Fragment和Action Bar 24

1.5.1 TabbedActivity类 25

1.5.2 针对大平板电脑的Main.xml文件 27

1.5.3 针对较小屏幕的main.xml和Subsidiary活动 28

1.5.4 TabActivity类 29

1.6 Android任务和进程模型 33

1.6.1 启动Dalvik实例 33

1.6.2 死亡,但没有变形 34

1.6.3 跨应用程序和进程的任务 35

1.7 多处理、安全性以及生命周期 35

1.8 声明应用程序属性 36

1.9 本章小结 37

第2章 关系模型和SQLite 39

2.1 数据库和关系模型 40

2.1.1 RDBMS的历史 40

2.1.2 关系模型 41

2.1.3 DBMS的其他功能 43

2.1.4 SQL语言 44

2.2 SQLite入门 48

2.2.1 SQLite命令行 48

2.2.2 SQLite数据库示例 53

2.3 本章小结 57

第3章 Android数据库支持 59

3.1 Java中的SQL:SQLiteDatabase类 59

3.1.1 基本的SQL嵌入 60

3.1.2 SQL语法 61

3.1.3 创建数据库:SQLiteOpenHelper类 67

3.1.4 管理数据库 71

3.2 游标、加载器和适配器 73

3.2.1 游标 73

3.2.2 适配器和视图绑定器 75

3.2.3 加载器 78

3.3 本章小结 81

第4章 内容提供器 83

4.1 使用内容提供器 84

4.1.1 名为URI的虚拟数据集 84

4.1.2 内容解析器:客户和提供器之间的联系 85

4.1.3 内容观察者:完成循环 86

4.1.4 IPC:系统范围可访问性 89

4.2 合约:URI和类型 89

4.2.1 授权 91

4.2.2 虚拟表的URI 92

4.2.3 返回值的MIME类型 93

4.2.4 权限 94

4.2.5 发布合约 94

4.3 实现内容提供器 94

4.3.1 创建内容提供器 95

4.3.2 返回类型和URI匹配器 96

4.3.3 写数据库 97

4.3.4 数据库查询 100

4.3.5 再论内容观察者 104

4.4 权限和注册 105

4.5 内容提供器和文件 107

4.6 本章小结 112

第5章 REST、内容提供器、并发性、网络和同步适配器 113

5.1 REST基础 114

5.1.1 使用REST的理由 114

5.1.2 HTTP协议中REST的应用 116

5.1.3 REST API示例 118

5.1.4 联系人表示方式 118

5.1.5 联系方法和URI 119

5.1.6 联系人事务 120

5.2 Android网络 123

5.2.1 Apache库 123

5.2.2 java.net库 124

5.2.3 权限 125

5.3 考虑并发性和生命周期 126

5.3.1 Android并发性架构 126

5.3.2 原生请求 127

5.4 健壮网络的架构 128

5.4.1 方法1:以服务为中心 129

5.4.2 方法2:以内容提供器为中心 131

5.4.3 方法3:以同步适配器为中心 132

5.4.4 Android内部的REST 133

5.4.5 restfulCachingProviderContacts项目:一个客户端示例 133

5.4.6 添加联系人 135

5.5 使用同步适配器 140

5.5.1 Android账户管理 140

5.5.2 创建同步适配器 151

5.6 本章小结 160

第6章 服务开发 163

6.1 服务开发的选择 164

6.1.1 请求的生命周期 164

6.1.2 三层服务架构 165

6.1.3 服务开发背景 166

6.2 为contacts构建REST风格的服务 168

6.2.1 一个传统的软件架构 168

6.2.2 编写示例:Spring Contacts服务及其同步变体 170

6.2.3 示例代码:Spring同步联系人服务 191

6.3 本章小结 198

第7章 移动和云计算 201

7.1 云性能和可伸缩性 202

7.1.1 移动的规模 202

7.1.2 云计算的持久性:从SQL到NoSQL 204

7.1.3 数据库文件格式 206

7.1.4 NoSQL的持久性 208

7.2 可扩展持久性的设计考虑事项 210

7.3 查看主流的云服务供应商 213

7.3.1 Amazon AWS 213

7.3.2 谷歌应用程序引擎 214

7.3.3 Joyent:托管MongoDB + node.js 214

7.3.4 Red Hat OpenShift 214

7.4 探讨代码示例 215

7.4.1 再论联系人DAO接口 215

7.4.2 编写代码:Amazon Contacts Service 216

7.4.3 编写代码:Google App Engine联系人 230

7.5 本章小结 238

第8章 基于设备的复杂数据:Android Contacts 241

8.1 PIM数据库:史前智能手机的化石 242

8.2 Android的Contacts提供器 242

8.3 ContactsContract API 242

8.4 Contacts提供器浏览器 243

8.4.1 用于浏览数据库的代码 245

8.4.2 Contacts提供器浏览器的源代码 245

8.5 本章小结 258

第9章 通用数据同步:Migrate项目和WebData API 259

9.1 WebData和Migrate项目介绍 260

9.1.1 Migrate项目的工作原理 260

9.1.2 Migrate项目如何简化移动端连接到企业的过程 261

9.1.3 详述 WebData API 262

9.1.4 WebData API REST风格的协议 262

9.2 Migrate项目的细节 272

9.2.1 Migrate项目Android WebData客户端 272

9.2.2 Android Migrate项目特性 273

9.3 WebData内容提供器Android API 274

9.3.1 Android内置提供器API 274

9.3.2 Migrate提供器API 275

9.4 本章小结 275

第10章 WebData应用程序 277

10.1 Migrate客户端 278

10.2 创建一个Migrate项目 279

10.2.1 步骤1:导入项目 279

10.2.2 步骤2:启用该项目作为一个Migrate客户端 279



Book Abstract

《Android数据库应用编程:为企业开发数据驱动Android应用》:
第3章的最后一个示例悄然引入了内容提供器:它是在列表视图中显示的简单游标适配器的数据源。该示例代码看似简单——它在示例中引入了内容提供器,而没有太多的说明。不过仔细复查代码,就可以推断出内容提供器的一些基本构建细节。如下面要介绍的4节内容。
视图。
虽然这两种方法的大多数参数(加载器构造函数和数据库查询方法)相同,但是请注意,数据库查询方法(如第3章所示)是SQLite数据库对象的方法。它的第一个参数是数据库表的名称。而加载器构造函数的第一参数是一个URI。如果游标加载器要能够从它的参数构建一个完整的查询,就必须有某种办法通过URI识别数据库——以及该数据库中的某个数据表。
这是内容提供器的第一个重要的架构功能:URI用来作为虚拟数据集的抽象名称。使用命名它们的URI内容,间接标识提供器。为此,Android使用规范方案content://来命名URI。内容提供器用于注册URl的特定组的所有者的协议将在本章后面详细讨论。现在,让我们通过观察内容提供器,在使用中探讨其行为。
4.1.2内容解析器:客户和提供器之间的联系
就示例来看,、内容提供器完全用在游标加载器的幕后。所有细节都隐藏在其实现中。在应用程序中添加一个新功能,将有助于揭示其中的一些细节。数据插入这个新功能的实现类似于之前展示的查询的实现。这又向内容提供器更近了一步,并且在这个示例中需要编写在加载器中隐藏的代码。
……
Introduction

许多面向企业的应用程序都采用一种主流模式:它们使用一个或多个REST风格的API访问数据。它们将数据显示给用户,允许用户修改数据,并更新服务器上的数据。本书正是一本专注于此类应用程序的书籍。

目标读者

如果你是一位经验丰富的Java或JavaScript程序员,可能对REST风格的应用程序的工作原理已经有所理解。你能正确地认为Android是一个Java操作系统:使用Java编写应用程序,然后将它们部署到在某些方面非常类似于Java虚拟机的环境中。这些应用程序使用REST风格的API进行通信来获取数据,并呈现给用户。

但是,对于Android软件开发的许多方面,先了解Android是如何设计的再着手开发将大有裨益。本书旨在让你在应用现有的经验,使用REST风格的应用程序与API来创建各种的高效、功能齐全的和响应式的Android应用程序之前做好实质性准备。你将避免因为假设Android编程就像是使用Oracle的类库的Web编程或客户端Java编程而导致的陷阱,并一开始就能高效地使用Android API完成任务。

如果你是一位Android编程新手,并且没有太多的iOS或Java经验,或者如果你不确定REST风格的应用程序是不是你需要学习的内容,应该先简单了解Android。初学者将会喜欢Reto Meier的优秀书籍Professional Android 4 Application Development (John Wiley & Sons, 2012)或developer.android.com的在线教程,相比Android的初期,在线文档已经得到很大的改进和完善。

如果你有兴趣将开发视野扩大到服务端,那么本书将赋予你处理应用程序网络两端的数据的能力。

涵盖的内容

本书以创建一个面向企业的Android应用程序的基础知识开始讲解,这些应用程序可以运行在手机和平板电脑上。但它不是一本面向初学者的图书。在阅读本书前,你应该至少阅读了谷歌的Android开发者网站上的在线教程。

Android使用SQLite,而本书相当深入地讲解SQL和SQLite,你将会了解数据如何存储在Android系统的SQLite数据库中。

Android以数据库类包装SQLite,而本书涵盖了这些类,并且对这些类的讨论也足够深入。

当应用程序使用Android环境中的数据时,它们往往使用一个专门的服务组件,称为ContentProvider。这个类以及相关的ContentResolver类提供了一个类似REST的接口,用于访问Android设备内的数据。使用这些类在构建应用程序时具有其他优点,即使用观察者模式。

使你能实现一个端到端的观察者模式是本书的一个要素。你的数据驻留在服务器上的REST风格API背后的数据库中。在本地,数据很可能存储在ContentProvider组件的SQLite数据库中。本书将介绍如何确保呈现给用户的数据是一致并且最新的。

简单也很重要。JSON是表示具有简单性和灵活性数据的一种简单方式,否则,就需要复杂的数据库设计。本书展示如何使用JSON与SQLite以保持实现的简洁,也展示一个复杂的Android数据库和ContentProvider接口,其使用传统的数据库设计方法实现。

当使用本书中的示例时,你将为前端应用程序创建和部署服务器。特别是,在第6章的末尾,第5章和第6章一起形成一个端到端的示例,它涵盖了本书中的技巧。在第7章中你会将此服务部署到亚马逊和谷歌的云资源上。

你不会花太多时间的一件事情是加载指标(loading indicator)。网络应用程序应该尽可能和“本地”应用程序的响应一样灵敏。创建、更新与删除(CRUD)不应该在用户和用户需要的数据之间介入。本书一个非常重要的部分介绍如何使CRUD脱离网络和用户的使用方式,方法是使用一个轻量级但功能强大的同步协议。本书通过引入一个封装了这个方法的开源框架,而完成了这一做法。

本书最后深入讨论Android安全性。

组织结构

本书书名源于其主旨是获取、展示和更新设备上的数据,以及使用云资源,这是大多数企业应用程序的核心。

本书开始快速介绍Android编程,从而引导你入门,创建一个显示数据的应用程序。这是一个尽可能快速的介绍,如果你需要通过Android文档的在线教程更深入地了解一些基本知识,那么不要惊讶。

之后,你将沉浸在本书的核心主题:数据上。本书自底向上介绍:如何在本地存储数据,如何进行查询,如何从REST API得到它并提供服务,在Android中如何实现观察者模式,如何更新它,以及在有、无连接时如何处理上述这一切,并有最好的性能表现。本书后面涵盖更多面向呈现数据的UI编程。本书最后一章介绍Android安全。

要使用本书,你需要什么

本书是关于Android软件开发的,因此其示例需要使用Android软件开发工具包(SDK),可以从developer.android.com下载该工具包。该SDK与三种最流行的桌面操作系统兼容:Windows、Mac OS X和Linux。你可能更愿意使用Android设备来运行代码示例,但你可以使用模拟器,它包含在SDK中,并可以在台式机上运行。

要运行本书中的示例服务,需要下载每一章中的软件包,其中包括:Apache Tomcat、ant、MySQL和Cygwin工具包。你还将需要有管理特权的亚马逊AWS账户和一个谷歌账户。

本书约定

为了帮助你从书本中获得最多价值以及跟踪所发生的事情,你会看到一些约定贯穿全书。

代码出现在两种不同的方式:

● 我们使用monofont型,没有突出大部分代码示例。

● 我们使用粗体强调在目前情况下特别重要的代码。

勘误表

尽管我们已经尽了各种努力来保证文章或代码中不出现错误,但是错误总是难免的,如果你在本书中找到了错误,例如拼写错误或代码错误,请告诉我们,我们将非常感激。通过勘误表,可以让其他读者避免受挫,当然,这还有助于提供更高质量的信息。

P2P邮件列表是为作者和读者之间的讨论而建立的。读者可以在p2p.wrox.com上加入P2P论坛。该论坛是一个基于Web的系统,用于传送与Wrox图书相关的信息和相关技术,与其他读者和技术用户交流。该论坛提供了订阅功能,当论坛上有新帖子时,会给你发送你选择的主题。Wrox作者、编辑和其他业界专家和读者都会在这个论坛上进行讨论。

(1) 进入p2p.wrox.com,单击Register链接。

(2) 阅读其内容,单击Agree按钮。

(3) 提供加入论坛所需的信息及愿意提供的可选信息,单击Submit按钮。

(4) 然后就可以收到一封电子邮件,其中的信息描述了如何验证账户,完成加入过程。

加入论坛后,就可以发送新信息,回应其他用户的帖子。可以随时在Web上阅读信息。如果希望某个论坛给自己发送新信息,可以在论坛列表中单击该论坛对应的Subscribe to this Forum图标。

对于如何使用Wrox P2P的更多信息,可阅读P2P FAQ,了解论坛软件的工作原理,以及许多针对P2P和Wrox图书的常见问题解答。要阅读FAQ,可以单击任意P2P页面上的FAQ链接。

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