2013-03-14 44 views
1

在试图解决this question,我遇到了Phonegap上的iOS问题时,我意识到我需要加载两个不同的cordova.js文件,具体取决于它是iOS还是Android应用程序。一种解决方案是测试服务器端并链接到不同的cordova.js文件,但是我试图弄清楚是否可以将每个应用程序绑定特定平台的cordova.js文件。当在Webview/UIWebView中加载外部URL时,是否可以加载本地JS文件?

是否有可能做这样的事情在Android上:

super.loadUrl("file:///android_asset/phonegap-2.5.0.js, 15000); 

和iOS中类似的东西?

回答

0

你可能应该点击不同的端点,或者为每个平台使用不同的参数,并让服务器处理它。

这就是说,你可以做这样的事情:

- (void)downloadHTMLAndUpdateCordova 
{ 
     NSURL *url = [NSURL URLWithString:@"http://www.someapi.com"]; 
     NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
     NSHTTPURLResponse* response = nil; 
     NSError* error = nil; 
     NSData *htmlData = [NSURLConnection sendSynchronousRequest:self.request returningResponse:&response error:&error]; 

     if (error == nil) { 
      NSString *htmlString = [NSString stringWithUTF8String:[htmlData bytes]]; 
      htmlString = [htmlString stringByReplacingOccurrencesOfString:@"someCordovaFile.js" withString:@"someCordovaFileiOS.js"]; 
      [self.webView loadHTMLString:htmlString baseURL:@"http://www.someapi.com"]; 
     } 
} 
+0

呀,其实我最终击中不同的端点。 – 2013-03-18 22:14:35