Nope, disable link from geo: URL to Google Maps. Does not quite work in the browser yet.

git-svn-id: https://zxing.googlecode.com/svn/trunk@287 59b500cc-1b3d-0410-9834-0bbf25fbcc57
This commit is contained in:
srowen 2008-03-17 16:50:03 +00:00
parent 4af9453acf
commit b18107391b
3 changed files with 22 additions and 16 deletions

View file

@ -26,7 +26,6 @@ import com.google.zxing.client.result.AddressBookDoCoMoResult;
import com.google.zxing.client.result.BookmarkDoCoMoResult;
import com.google.zxing.client.result.EmailAddressResult;
import com.google.zxing.client.result.EmailDoCoMoResult;
import com.google.zxing.client.result.GeoParsedResult;
import com.google.zxing.client.result.ParsedReaderResult;
import com.google.zxing.client.result.ParsedReaderResultType;
import com.google.zxing.client.result.UPCParsedResult;
@ -104,13 +103,15 @@ final class ResultHandler extends Handler {
} catch (URISyntaxException e) {
return;
}
} else if (type.equals(ParsedReaderResultType.GEO)) {
GeoParsedResult geoResult = (GeoParsedResult) result;
try {
intent = new Intent(Intent.SENDTO_ACTION, new ContentURI(geoResult.getGoogleMapsURI()));
} catch (URISyntaxException e) {
return;
}
//} else if (type.equals(ParsedReaderResultType.GEO)) {
// GeoParsedResult geoResult = (GeoParsedResult) result;
// try {
// intent = new Intent(Intent.VIEW_ACTION, new ContentURI(geoResult.getGoogleMapsURI()));
// // or can we send the raw geo: URI to Android? maybe it'll open Maps?
// // or just open a MapView
// } catch (URISyntaxException e) {
// return;
// }
} else if (type.equals(ParsedReaderResultType.UPC)) {
UPCParsedResult upcResult = (UPCParsedResult) result;
try {

View file

@ -28,12 +28,14 @@ import com.google.zxing.Result;
*/
public final class GeoParsedResult extends ParsedReaderResult {
private final String geoURI;
private final float latitude;
private final float longitude;
private final float altitude;
private GeoParsedResult(float latitude, float longitude, float altitude) {
private GeoParsedResult(String geoURI, float latitude, float longitude, float altitude) {
super(ParsedReaderResultType.GEO);
this.geoURI = geoURI;
this.latitude = latitude;
this.longitude = longitude;
this.altitude = altitude;
@ -66,7 +68,11 @@ public final class GeoParsedResult extends ParsedReaderResult {
longitude = Float.parseFloat(rawText.substring(latitudeEnd + 1, longitudeEnd));
altitude = Float.parseFloat(rawText.substring(longitudeEnd + 1));
}
return new GeoParsedResult(latitude, longitude, altitude);
return new GeoParsedResult(rawText, latitude, longitude, altitude);
}
public String getGeoURI() {
return geoURI;
}
/**

View file

@ -20,7 +20,6 @@ import com.google.zxing.Result;
import com.google.zxing.client.result.BookmarkDoCoMoResult;
import com.google.zxing.client.result.EmailAddressResult;
import com.google.zxing.client.result.EmailDoCoMoResult;
import com.google.zxing.client.result.GeoParsedResult;
import com.google.zxing.client.result.ParsedReaderResult;
import com.google.zxing.client.result.ParsedReaderResultType;
import com.google.zxing.client.result.UPCParsedResult;
@ -208,9 +207,9 @@ public final class ZXingMIDlet extends MIDlet {
} else if (type.equals(ParsedReaderResultType.EMAIL_ADDRESS)) {
String email = ((EmailAddressResult) result).getEmailAddress();
showOpenURL("Compose E-mail?", email, "mailto:" + email);
} else if (type.equals(ParsedReaderResultType.GEO)) {
GeoParsedResult geoResult = (GeoParsedResult) result;
showOpenURL("Open In Google Maps?", geoResult.getDisplayResult(), geoResult.getGoogleMapsURI());
//} else if (type.equals(ParsedReaderResultType.GEO)) {
// GeoParsedResult geoResult = (GeoParsedResult) result;
// showOpenURL("Open In Google Maps?", geoResult.getDisplayResult(), geoResult.getGoogleMapsURI());
} else if (type.equals(ParsedReaderResultType.UPC)) {
String upc = ((UPCParsedResult) result).getUPC();
String uri = "http://www.upcdatabase.com/item.asp?upc=" + upc;