- 浏览: 7331169 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
ApplicationWindow.js文件内容:
//Application Window Component Constructor exports.ApplicationWindow = function() { var geo = require('geo'); //create object instance var self = Ti.UI.createWindow({ backgroundColor:'#fff', fullscreen: false, exitOnClose: true }); // create UI components var view = Ti.UI.createView({ backgroundColor: '#800', height: '50dp', top: 0 }); var textfield = Ti.UI.createTextField({ height: '40dp', top: '5dp', left: '5dp', right: '50dp', style: Ti.UI.INPUT_BORDERSTYLE_ROUNDED, hintText: 'Enter an address', backgroundColor: '#fff', paddingLeft: '5dp' }); var button = Ti.UI.createButton({ title: '+', font: { fontSize: '20dp', fontWeight: 'bold' }, top: '5dp', height: '40dp', width: '40dp', right: '5dp' }); var mapview; //Window打开加载事件的使用 // add map after window opens self.addEventListener('open', function() { // Make sure we only add the map once if (mapview !== undefined) { return; } mapview = Titanium.Map.createView({ mapType: Titanium.Map.STANDARD_TYPE, region: { latitude: geo.LATITUDE_BASE, longitude: geo.LONGITUDE_BASE, latitudeDelta: 0.1, longitudeDelta: 0.1 }, animate:true, regionFit:true, userLocation:false, top: '50dp' }); // Add initial annotation mapview.addAnnotation(Ti.Map.createAnnotation({ animate: true, pincolor: Titanium.Map.ANNOTATION_RED, title: 'Appcelerator', latitude: geo.LATITUDE_BASE, longitude: geo.LONGITUDE_BASE, leftButton: '/images/delete.png' })); // Handle all map annotation clicks mapview.addEventListener('click', function(e) { if (e.annotation && (e.clicksource === 'leftButton' || e.clicksource == 'leftPane')) { mapview.removeAnnotation(e.annotation); } }); self.add(mapview); }); // Execute forward geocode on button click button.addEventListener('click', function() { textfield.blur(); geo.forwardGeocode(textfield.value, function(geodata) { mapview.addAnnotation(Ti.Map.createAnnotation({ animate: true, pincolor: Titanium.Map.ANNOTATION_RED, title: geodata.title, latitude: geodata.coords.latitude, longitude: geodata.coords.longitude, leftButton: '/images/delete.png' })); mapview.setLocation({ latitude: geodata.coords.latitude, longitude: geodata.coords.longitude, latitudeDelta: 1, longitudeDelta: 1 }); }); }); // assemble view hierarchy view.add(textfield); view.add(button); self.add(view); return self; };
geo.js
var GOOGLE_BASE_URL = 'http://maps.googleapis.com/maps/geo?output=json&q='; var ERROR_MESSAGE = 'There was an error geocoding. Please try again.'; exports.LATITUDE_BASE = 37.389569; exports.LONGITUDE_BASE = -122.050212; var GeoData = function(title, latitude, longitude) { this.title = title; this.coords = { latitude: latitude, longitude: longitude }; }; //外部暴露的方法 exports.forwardGeocode = function(address, callback) { if (Ti.Platform.osname === 'mobileweb') { forwardGeocodeWeb(address, callback); } else { forwardGeocodeNative(address, callback); } }; //本地通过HttpClient方式访问 var forwardGeocodeNative = function(address, callback) { var xhr = Titanium.Network.createHTTPClient(); xhr.open('GET', GOOGLE_BASE_URL + address); xhr.onload = function() { var json = JSON.parse(this.responseText); if (!json.Placemark || !json.Placemark[0].Point || !json.Placemark[0].Point.coordinates) { alert('Unable to geocode the address'); return; } callback(new GeoData( address, json.Placemark[0].Point.coordinates[1], json.Placemark[0].Point.coordinates[0] )); }; xhr.onerror = function(e) { Ti.API.error(e.error); alert(ERROR_MESSAGE); }; xhr.send(); }; //Web访问的方式 var forwardGeocodeWeb = function(address, callback) { var geocoder = new google.maps.Geocoder(); if (geocoder) { geocoder.geocode({ 'address': address }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { callback(new GeoData( address, results[0].geometry.location.Ua, results[0].geometry.location.Va )); } else { Ti.API.error(status); alert(ERROR_MESSAGE); } }); } else { alert('Google Maps Geocoder not supported'); } };
发表评论
-
[转]年度最实用50款免费Android应用推荐
2012-11-08 16:39 3366据国外媒体报道,有人说Android应用市场比iPhone应用 ... -
GIS的学习(四十五)【转】Integration of the MBTiles format on Android
2012-10-22 17:13 2936转载自 http:/ ... -
GIS的学习(四十四)osmdroid sdcard检查
2012-10-15 16:12 2331在许多应用中使用到sdcard的检查,在osmdro ... -
GIS的学习(四十三)osmdroid基于几个经典代理类
2012-10-15 16:06 2624在osmdroid中给基于位置的代理类如下: pack ... -
Android中PopupWindow的用法(位置、动画、焦点)
2012-10-12 14:12 11513在Android中有很多级别的Window,不同级别的Wind ... -
【转】Android根据分辨率进行单位转换-(dp,sp转像素px)
2012-10-11 09:18 27126Android系统中,默认的单位是像素(px)。也就是说,在没 ... -
GIS的学习(二十九)Osmdroid 离线地图存放位置的研究和详细分析
2012-09-23 11:49 11514在手机通过osmdroid调用离线地图必须放在 ... -
GIS的学习(二十八)Osmdroid相关的开源项目
2012-09-23 11:31 25393osm 数据格式(openstreet map)与Ro ... -
GIS的学习(二十七)通过geoserver的georss访问第三方地图
2012-09-23 00:34 3598在geoserver中如果想调用第三方地图可以采 ... -
android中使用 定时更新界面定时器Timer的使用
2012-09-22 22:09 25513handler的使用 一、Handler的定义: ... -
【转】Android应用程序的自动更新升级(自身升级、通过tomcat) .
2012-09-16 15:03 7356http://blog.csdn.net/mu0206mu/a ... -
GIS的学习(二十七)OGC 的WCS WFS 及WMS 服务
2012-09-11 22:22 12103http://www.gisall.com/?6678/v ... -
GIS的学习(二十六)geotools 使用 部分代码总结
2012-09-11 22:20 5692前段时间的一个项目 本来用ae完成了种种的 查询,空间分析等等 ... -
GIS的学习(二十五)geoserver wms中的各种操作API详细讲解和使用
2012-09-10 17:42 9698官方geoserver中WMS服务中几种操作的API的详细说明 ... -
GIS的学习(二十四)android异步调用geoserver wms中的地图
2012-09-10 17:38 8153在geoserver的客户端通过wms的GetMap实现 ... -
GIS的学习(二十三)geoserver中CQL和ECQL的使用
2012-09-10 16:29 6618以下引用自官方文档: CQL and ECQL¶ CQ ... -
GIS的学习(二十二)osmdroid中添加縮放控件
2012-09-06 23:09 2783package com.geoserver.osmdroid; ... -
GIS的学习(二十一)在osmdroid 地图中添加marker 并添加事件
2012-09-06 22:27 6610我有 osmdroid,overlayswithf ... -
GIS的学习(二十)基于Geoserver的WFS服务与Openlayers实现地理查询
2012-08-30 18:48 11400基于Geoserver发布的wfs服务,与Openlayers ... -
GIS的学习(十九)Geoserver使用添加,删除,查询地图中的POI
2012-08-30 17:28 10348在geoserver自定义的地图中通过geoserver ...
相关推荐
2. **JavaScript 与 Native API**:Titanium 提供了 JavaScript 接口,使得开发者可以调用 Objective-C(针对 iOS)或 Java(针对 Android)的原生API,实现设备功能,如访问硬件传感器、处理多线程等。 3. ** ...
在 **Appcelerator Titanium** 这个跨平台移动开发框架上集成 Google Analytics,可以深入了解用户如何与你的应用互动,帮助优化功能、提高用户满意度,并做出数据驱动的决策。 **一、Appcelerator Titanium** ...
**谷歌AdWords转化跟踪Titanium模块** 谷歌AdWords转化跟踪是一项关键的在线营销工具,它允许广告主衡量广告活动的效果,特别是关注用户在点击广告后是否完成了特定目标,如购买商品、填写表单或下载应用。这个...
Titanium Android:Google Play帐单 这是有关如何使用Titanium Android模块利用的详细指南。 当前使用的计费库版本为3.0.3 (最新可用)。 寻找iOS吗? Ti.StoreKit,iOS的应用程序内购买模块,也已被重写,例如...
对用于调用 Google 业务 API 的 URL 进行签名。 安装 将此行添加到应用程序的 Gemfile 中: gem 'google_business_api_url_signer', git: 'git://github.com/Skalar/google_business_api_url_signer.git' 然后...
Titanium 提供了一套 API,使得开发者可以通过 JavaScript 调用原生设备功能,比如摄像头、GPS 和传感器等。 **项目核心功能** 1. **串口通信**: 该模块实现了与 Arduino 设备的串行通信,允许 Android 应用通过 ...
AdMob是Google提供的一个广告网络服务,它允许开发者在他们的应用程序中展示各种类型的广告,包括横幅广告、插页式广告和奖励广告。在这个特定的场景中,我们关注的是“Admobrewarded”,这是一个专门为AdMob奖励...
在移动应用开发中,AdMob是一项非常重要的服务,它由Google提供,用于在应用程序中插入广告,从而为开发者带来收入。本教程将详细介绍如何利用AdMob服务与Appcelerator Titanium框架进行集成,创建一个能够展示AdMob...
一旦应用开发完成并经过充分测试,可以使用 Titanium 的打包工具生成适用于不同平台的安装包,然后提交到 App Store、Google Play 或其他应用市场。 在 "learning-titanium-master" 压缩包中,你应该能找到这个教程...
FullStackWebApplication 使用NodeJS,Javascript,Express,HTML和CSS的全栈Web应用程序,通过API调用和数据库查询以及Google OAuth2来定位附近的浴室和餐厅。
1. **实时定位**:通过调用设备的GPS或网络定位服务,获取用户的实时经纬度坐标。 2. **地图集成**:集成第三方地图API,如Google Maps或Apple Maps,将用户的位置信息在地图上呈现出来。 3. **位置标记**:允许用户...
在拍卖服务中,API Gateway将处理来自客户端的请求,调用相应的函数处理拍卖逻辑。 4. **数据库集成**:拍卖服务需要存储商品信息、用户数据和出价记录等,因此需要与数据库进行交互。无服务器架构下,通常使用...
它简化了在AWS、Azure、Google Cloud等平台上的Lambda函数配置和部署。 综上所述,"serverless-examples-cached-rds-ws"项目是一个综合运用了无服务器技术、AWS服务和Java开发的示例,展示了如何在云端构建高效、可...
Android 一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导开发 IOS 由苹果公司开发的移动操作系统 Webkit 一个开源的浏览器引擎,在手机上的...
在Android系统中,常规的APP安装需要用户交互,比如通过Google Play或其他第三方应用商店下载APK后,点击安装并确认权限。而静默安装则是通过调用Android的底层API,绕过用户界面直接执行安装命令。这通常涉及到`pm`...
通常,这样的示例会利用第三方地图服务提供商如Google Maps API、OpenStreetMap Nominatim API或者Bing Maps API来完成地理编码任务。 首先,项目的核心功能是将用户输入的地址字符串(例如"1600 Amphitheatre ...