Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/96.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android RadPHP适合构建应用程序吗?_Android_Ios_Build_Radphp - Fatal编程技术网

Android RadPHP适合构建应用程序吗?

Android RadPHP适合构建应用程序吗?,android,ios,build,radphp,Android,Ios,Build,Radphp,昨天我尝试了RadPHP,它看起来非常类似于Delphi,它的属性非常好 我设置了一些演示应用程序来测试它,在编译(到android)之后,它似乎是一个编译过的应用程序,它创建了一个webview来显示HTML内容。听起来有点奇怪,是不是 RadPHP是否为iOS创建了一个类似的包,还是这是一个真正的本地应用程序 我无法测试它的iOS版本,因为我没有密钥,也不知道编译后的格式 如果是,苹果会接受创建的应用程序吗 编辑/更新: 我编译了这个应用程序(使用假苹果id),当然失败了,但在输出目录中生成

昨天我尝试了RadPHP,它看起来非常类似于Delphi,它的属性非常好

我设置了一些演示应用程序来测试它,在编译(到android)之后,它似乎是一个编译过的应用程序,它创建了一个webview来显示HTML内容。听起来有点奇怪,是不是

RadPHP是否为iOS创建了一个类似的包,还是这是一个真正的本地应用程序

我无法测试它的iOS版本,因为我没有密钥,也不知道编译后的格式

如果是,苹果会接受创建的应用程序吗

编辑/更新: 我编译了这个应用程序(使用假苹果id),当然失败了,但在输出目录中生成了一些C-Objective(.h,.m)文件。在目录类中有一个名为AppDelegate.m的文件。查看该文件时,可以看到它为WebView创建了一个HTML包装(以下是代码片段):

结论: 它将是一个本机应用程序,但它是Webview的包装器(并非所有应用程序都是本机应用程序)。它与公认答案中所说的完全相同。所有移动应用程序都将使用Webview创建。我认为RadPHP只有在您喜欢编程界面时才有用,但在创建移动应用程序时不需要它(您可以直接使用phonegap)。在RadPHP示例中,您仍然需要mac来创建应用程序(您需要XCode)

苹果接受phonegap生成的应用程序,但它仍然不确定是否能进入AppStore,这取决于你用它做什么。我认为简单的应用会成功。 另见:

关于RadPHP生成的HTML的通知
它不是W3C

RadPHP使用PhoneGap将您的应用打包为安卓、iOS或黑莓应用。这三个移动平台的工作方式基本相同。

这个问题有什么不好,我真的不明白。这个问题没有什么不好,但事实上你已经做了不好的事情。“如果做了,这是一个好的尝试吗?”是非常主观的。因此,这并不是主观问题的正确位置。删除了重复的帖子并删除了“good to go”。但当这个问题不适合在这里提问时,我在哪里可以提问而没有人认为这是一个主观问题。对不起,遗漏了一部分。苹果应用商店确实接受以这种方式创建的应用程序——用RadPHP编写的HTML/CSS/JavaScript,并使用PhoneGap附带的向导打包为iOS原生应用程序。谢谢你明确的回答。我对问题中的解决方案提出了一些意见-请参阅“编辑/更新”
/**
 Called when the webview finishes loading.  This stops the activity view and closes the imageview
 */
- (void)webViewDidFinishLoad:(UIWebView *)theWebView
{
    // only valid if StreambutlerRemoteControl.plist specifies a protocol to handle
    if(self.invokeString)
    {
        // this is passed before the deviceready event is fired, so you can access it in js when you receive deviceready
        NSString* jsString = [NSString stringWithFormat:@"var invokeString = \"%@\";", self.invokeString];
        [theWebView stringByEvaluatingJavaScriptFromString:jsString];
    }
    return [ super webViewDidFinishLoad:theWebView ];
}

- (void)webViewDidStartLoad:(UIWebView *)theWebView
{
    return [ super webViewDidStartLoad:theWebView ];
}

/**
 * Fail Loading With Error
 * Error - If the webpage failed to load display an error with the reason.
 */
- (void)webView:(UIWebView *)theWebView didFailLoadWithError:(NSError *)error
{
    return [ super webView:theWebView didFailLoadWithError:error ];
}

/**
 * Start Loading Request
 * This is where most of the magic happens... We take the request(s) and process the response.
 * From here we can re direct links and other protocalls to different internal methods.
 */
- (BOOL)webView:(UIWebView *)theWebView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
 NSURL *url = [request URL];
  if ([[url scheme] isEqualToString:@"http"] || [[url scheme] isEqualToString:@"https"]) {
    return YES;
  }
  else {
    return [ super webView:theWebView shouldStartLoadWithRequest:request navigationType:navigationType ];
  }
}