From db1e7ee1894c07daeac7b96d1f7159cad0b94f3f Mon Sep 17 00:00:00 2001 From: srowen Date: Tue, 29 Sep 2009 22:33:55 +0000 Subject: [PATCH] Enhanced book support git-svn-id: http://zxing.googlecode.com/svn/trunk@1068 59b500cc-1b3d-0410-9834-0bbf25fbcc57 --- android/res/values-ja-rJP/strings.xml | 1 + android/res/values-zh-rCN/strings.xml | 1 + android/res/values-zh-rTW/strings.xml | 1 + android/res/values/strings.xml | 1 + .../android/result/URIResultHandler.java | 25 +++++++++++++++---- 5 files changed, 24 insertions(+), 5 deletions(-) diff --git a/android/res/values-ja-rJP/strings.xml b/android/res/values-ja-rJP/strings.xml index 0daf9f78..d46f1068 100644 --- a/android/res/values-ja-rJP/strings.xml +++ b/android/res/values-ja-rJP/strings.xml @@ -34,6 +34,7 @@ ブラウザ起動 商品検索 書籍の内容を検索する + 閲覧図書 ブックマークを送信する メールで送信する SMSで送信する diff --git a/android/res/values-zh-rCN/strings.xml b/android/res/values-zh-rCN/strings.xml index acd4cb78..080a996c 100644 --- a/android/res/values-zh-rCN/strings.xml +++ b/android/res/values-zh-rCN/strings.xml @@ -32,6 +32,7 @@ 打开浏览器 打开产品搜索 搜索图书内容 + 浏览本书 分享书签 通过email分享 通过短信分享 diff --git a/android/res/values-zh-rTW/strings.xml b/android/res/values-zh-rTW/strings.xml index ff28850e..1cbe3d6b 100644 --- a/android/res/values-zh-rTW/strings.xml +++ b/android/res/values-zh-rTW/strings.xml @@ -32,6 +32,7 @@ 打開瀏覽器 打開產品搜索 搜索圖書內容 + 瀏覽本書 分享書簽 通過email分享 通過短信分享 diff --git a/android/res/values/strings.xml b/android/res/values/strings.xml index af76d6c2..fde40a54 100755 --- a/android/res/values/strings.xml +++ b/android/res/values/strings.xml @@ -34,6 +34,7 @@ Open browser Product Search Search book contents + Browse book Share bookmark Share via email Share via SMS diff --git a/android/src/com/google/zxing/client/android/result/URIResultHandler.java b/android/src/com/google/zxing/client/android/result/URIResultHandler.java index 3088f7f8..8ec530d0 100644 --- a/android/src/com/google/zxing/client/android/result/URIResultHandler.java +++ b/android/src/com/google/zxing/client/android/result/URIResultHandler.java @@ -17,6 +17,7 @@ package com.google.zxing.client.android.result; import com.google.zxing.client.android.R; +import com.google.zxing.client.android.LocaleManager; import com.google.zxing.client.result.ParsedResult; import com.google.zxing.client.result.URIParsedResult; @@ -31,7 +32,8 @@ public final class URIResultHandler extends ResultHandler { private static final int[] buttons = { R.string.button_open_browser, R.string.button_share_by_email, - R.string.button_share_by_sms + R.string.button_share_by_sms, + R.string.button_read_book, }; public URIResultHandler(Activity activity, ParsedResult result) { @@ -40,7 +42,7 @@ public final class URIResultHandler extends ResultHandler { @Override public int getButtonCount() { - return buttons.length; + return isGoogleBooksURI() ? buttons.length : buttons.length - 1; } @Override @@ -51,15 +53,23 @@ public final class URIResultHandler extends ResultHandler { @Override public void handleButtonPress(int index) { URIParsedResult uriResult = (URIParsedResult) getResult(); + String uri = uriResult.getURI(); switch (index) { case 0: - openURL(uriResult.getURI()); + openURL(uri); break; case 1: - shareByEmail(uriResult.getURI()); + shareByEmail(uri); break; case 2: - shareBySMS(uriResult.getURI()); + shareBySMS(uri); + break; + case 3: + int equals = uri.indexOf('='); + String id = uri.substring(equals + 1); + String readBookURI = "http://books.google." + + LocaleManager.getBookSearchCountryTLD() + "/m#Read?id=" + id; + openURL(readBookURI); break; } } @@ -68,4 +78,9 @@ public final class URIResultHandler extends ResultHandler { public int getDisplayTitle() { return R.string.result_uri; } + + private boolean isGoogleBooksURI() { + return ((URIParsedResult) getResult()).getURI().startsWith("http://google.com/books?id="); + } + } -- 2.20.1