Cordova 比 UIWebView 和本地 HTML 有什么好处?
What is the benefit of Cordova over UIWebView and local HTML?
我有一个本机 iOS 应用程序,它将在网络视图中显示 HTML 应用程序中嵌入的内容。我打算将一个 Cordova/PhoneGap 项目嵌入到我的应用程序中并使用 CDVViewController (link),但在此之前,我设法使用基本的 UIWebView 元素直接加载内容。这是我现在使用的代码:
let path = NSBundle.mainBundle().pathForResource("www/index", ofType: "html")
let url = NSURL(fileURLWithPath: path!)
let request = NSURLRequest(URL: url)
missionView.delegate = self
missionView.loadRequest(request)
我将 "www" 目录添加到我的项目路径中,其中包含所有页面内容。它加载正确,运行本地 JavaScript 内容和 CSS 样式。
所以,我的问题是:当 Cordova 似乎完全符合我的要求时,我为什么要使用它的开销?仅仅是与原生控件的集成吗?
你误解了Cordova是什么。这与显示 HTML 内容无关。它是关于让您的 整个应用程序 基于网络(就像在 Cocoa 中可以编写本机应用程序之前 iOS 上的事情一样)。
Cordova webview 相对于 UIWebView 的优势在于您可以轻松地从 webview 中的 javascript 代码调用本机函数。你可以利用 existing plugins to do this or write your own.
在现有应用程序中嵌入 Cordova 并不常见,但有一个用例并且它是受支持的功能。你可能想看看 this guide.
我有一个本机 iOS 应用程序,它将在网络视图中显示 HTML 应用程序中嵌入的内容。我打算将一个 Cordova/PhoneGap 项目嵌入到我的应用程序中并使用 CDVViewController (link),但在此之前,我设法使用基本的 UIWebView 元素直接加载内容。这是我现在使用的代码:
let path = NSBundle.mainBundle().pathForResource("www/index", ofType: "html")
let url = NSURL(fileURLWithPath: path!)
let request = NSURLRequest(URL: url)
missionView.delegate = self
missionView.loadRequest(request)
我将 "www" 目录添加到我的项目路径中,其中包含所有页面内容。它加载正确,运行本地 JavaScript 内容和 CSS 样式。
所以,我的问题是:当 Cordova 似乎完全符合我的要求时,我为什么要使用它的开销?仅仅是与原生控件的集成吗?
你误解了Cordova是什么。这与显示 HTML 内容无关。它是关于让您的 整个应用程序 基于网络(就像在 Cocoa 中可以编写本机应用程序之前 iOS 上的事情一样)。
Cordova webview 相对于 UIWebView 的优势在于您可以轻松地从 webview 中的 javascript 代码调用本机函数。你可以利用 existing plugins to do this or write your own.
在现有应用程序中嵌入 Cordova 并不常见,但有一个用例并且它是受支持的功能。你可能想看看 this guide.