我正在开发基于iPhone网络的应用程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我正在开发基于iPhone网络的应用程序相关的知识,希望对你有一定的参考价值。

因此,当我在我的应用程序的搜索栏中输入内容时,它应该将我的经度和经度发送到Web服务器,这样它就可以返回到我可以获取搜索到的标记的最近的位置。我是Titanium的新手,所以有人可以帮助我吗?

答案

您基本上是通过HTTP向您的Web服务发送请求并使用结果(从@Muhammad Zeeshan获取功能获取经度/纬度):

var xhr = Titanium.Network.createHTTPClient();
// write file on success
xhr.onload = function(){
    var f = Titanium.Filesystem.getFile(Titanium.Filesystem.applicationDataDirectory,this.apiFile);
    f.write(this.responseData);
};
// error handling
xhr.onerror = function(){  
    Ti.API.error(this.status + ' - ' + this.statusText);  
};
// open the client (and test HTTPS)
xhr.open('GET','http://example.com/api/?longitude=' + longitude + '&latitude=' + latitude);
// send the data
xhr.send();
// read file and return json
var f = Titanium.Filesystem.getFile(Titanium.Filesystem.applicationDataDirectory, this.apiFile);
var contents = f.read();
var yourJson = JSON.parse(contents);

在服务器端,您需要一些Web服务与之交谈(您没有指定在服务器上使用的语言),但我认为您通过mysql数据库获取数据(其他应该类似):

SELECT ((ACOS(SIN($lat * PI() / 180) * SIN(lat * PI() / 180) + COS($latitude * PI() / 180) * COS(lat * PI() / 180) * COS(($longitude – lon) * PI() / 180)) * 180 / PI()) * 60 * 1.1515) AS `distance` FROM `locations` HAVING `distance`<=’10′ ORDER BY `distance` ASC

添加其他WHERE子句以按标签过滤。

另一答案

如果您使用TiStudio而不是TiDeveloper,您可以使用示例项目GPS开始。它已捆绑在下载中,因此只需启动它并将该代码用作工作副本即可学习。

以上是关于我正在开发基于iPhone网络的应用程序的主要内容,如果未能解决你的问题,请参考以下文章

在基于导航的应用程序-iphone中的选定视图中隐藏导航栏

iPhone 基于导航的应用程序 - 一些全局工具栏问题

iPhone 3GS 上的 HTML5 WebSocket

iOS 相当于 Android 片段/布局

iphone / Objective c的最佳代码片段网站是啥[重复]

从 iPhone 查找连接到本地网络的系统?