gpt4 book ai didi

php - 将我的 IOS 应用程序连接到现有的 PHP 应用程序

转载 作者:行者123 更新时间:2023-11-29 03:38:26 25 4
gpt4 key购买 nike

我有兴趣创建一个利用现有 PHP/MySQL 应用程序的 IOS 应用程序。

目前,我的应用程序是基于网络的。我想启用该工具的移动版本,而无需重新创建我已经在 PHP 中实现的逻辑。基本上,我想让我的 IOS 应用程序保持精简,并使用某种形式的 RPC 与我的 PHP 代码进行交互。

我正在考虑通过使用 XML 创建查询/响应系统来做一些定制的事情。但是,恐怕我正在重新造轮子。关于执行此操作的最佳方法有什么建议吗?

最佳答案

将 PHP 与 JSON 结合使用使得 PHP 和 iOS 之间的通信变得非常容易。

在服务器上,数组可以格式化为 JSON,如下所示:

服务器示例

<?php
$response = cydia_check("eswick", $_GET['package'], $_GET['version'], $_GET['udid'], $_SERVER['REMOTE_ADDR'], "local", $apikey);//Example function, returns an array. (In this case, checks an activation server to verify if the app was really purchased.)

print json_encode($response);//Prints JSON encoding of array to stdout.
?>

在 iOS 5 中,多亏了 Twitter,Foundation 包含了一个可以简化 JSON 解析的类。下面是一些调用和解析上述 PHP 函数的示例代码:

客户端示例

#define PACKAGE "com.eswick.drmtest"
#define VERSION "0.8"

NSString *requestAddress = [NSString stringWithFormat:@"http://www.eswick.com/check.php?package=%@&version=%@&udid=%@", PACKAGE, VERSION, MGCopyAnswer(kMGUniqueDeviceID)];

NSMutableURLRequest *request =[NSMutableURLRequest requestWithURL:[NSURL URLWithString:requestAddress]];



NSError *error = [[NSError alloc] init];
NSHTTPURLResponse *responseCode = nil;

NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&responseCode error:&error];//Get the output of the PHP page we loaded.

if(!responseData)
return false;

NSError *parseError = nil;
id result = [NSJSONSerialization JSONObjectWithData:responseData options:0 error:&parseError];//Parse the JSON output from responseData.

if ([result isKindOfClass:[NSDictionary class]]){//Make sure the output is an array.
NSString *state = [result valueForKey:@"state"];//Check the array returned by PHP for a value named 'state'.

if (!state){//If it doesn't exist, fail.
return false;
}else{
if([state isEqualToString:@"purchased"])//If app is truly purchased, return success.
return true;
}

}

这应该让您大致了解其工作原理。您将不得不更改它以满足您的需要,但这是一个非常基本的概念。

显然,不要实际上将此示例 代码用作DRM。

关于php - 将我的 IOS 应用程序连接到现有的 PHP 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17960451/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com