ios - 在 native IOS 应用程序中加载多个 Cordova 微应用程序

标签 ios cordova cordova-plugins

我必须根据 Native IOS 应用程序中的用户访问来加载多个 Cordova 应用程序。
我想在应用程序启动时动态加载 zip 文件并将它们存储在 Documents 或 Libraries 文件夹中,然后解压缩这些文件,然后我尝试在我的 View Controller 中使用下面的代码直接加载 Cordova View

CDVViewController* viewController = [CDVViewController new];
viewController.wwwFolderName=@"www";
viewController.startPage=@"abc.html";
viewController.view.frame=CGRectMake(0, 0, 320, 480);
[self.view addSubview:viewController.view];

但问题是,如果我动态指向 Documents 或 Library 文件夹,wwwFolderName 不起作用,它只接受应用程序附带的根文件夹,所以我想知道我应该如何实现这个用例。

最佳答案

如果我理解你是正确的,这里是一个例子,其中 YOUR_APP_PATH 是目录的字符串路径,你想要存储你的应用程序源,而 YOUR_SEARCH_PATH 是 NSLibraryDirectory 或 NSDocumentsDirectory

- (void)openApp     
    NSString *filePath = [self directoryToApp:YOUR_APP_PATH forSearchPath:YOUR_SEARCH_PATH];
    NSURL *url = [NSURL fileURLWithPath:filePath];
    NSURLRequest *request    = [NSURLRequest requestWithURL: url
                                           cachePolicy:NSURLRequestReloadIgnoringLocalCacheData
                                       timeoutInterval: 20.0];
    [self.webView loadRequest:appReq request;
}

- (NSURL *)directoryToApp:(NSString *)appPath forSearchPath:(NSSearchPathDirectory)searchPath{
    NSString *basePath = [self applicationDocumentsDirectory:searchPath].absoluteString;
    return [NSURL fileURLWithPath:[basePath stringByAppendingString:appPath]];
}

- (NSURL *)applicationDocumentsDirectory:(NSSearchPathDirectory)searchPath
{
    return [[[NSFileManager defaultManager] URLsForDirectory: searchPath
                                                   inDomains: NSUserDomainMask] lastObject];
}

关于ios - 在 native IOS 应用程序中加载多个 Cordova 微应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33912215/

相关文章:

ios - 快速将单元格并排放置在 Collection View 中

ios - UIAlertController 的后续演示出现卡顿

android - Phonegap 图像模糊,缩放后不会重新绘制该图像

ios - Ionic 2 无法使用来自 IOS 模拟器资源的音频文件

ios - cordova-plugin-console 不支持这个项目的 cordova-ios 版本

ios - 在 iOS 上用渐变填充路径

java - 错误 : Executing command 'ant' , 请确保您已安装 ant 并将其添加到您的路径

android - Cordova CLI 在 Android 上覆盖 Plugman 插件?

android - Intel XDK Crosswalk 构建中的 cordova.file

ios - cordova build ios 不创建 ipa 文件