You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

78 lines
3.0 KiB

//
// UniappPlugin.m
// Runner
//
// Created by tangziyang on 2021/7/6.
//
#import "UniappPlugin.h"
#import <Foundation/Foundation.h>
@implementation UniappPlugin
-(void)open:(NSString *)appid url:(NSString *)wgtUrl param:(NSDictionary *)dict block:(void (^)(void))block{
if (![DCUniMPSDKEngine isExistsApp:appid]) {
//不存在准备下载
// [self downloadWgt:wgtUrl appid:appid block:nil success:^{
// [self openUniApp:appid dict:dict];
// }];
}else{
[self openUniApp:appid dict:dict];
}
}
-(void)openUniApp:(NSString *)name dict:(NSDictionary *)dict{
DCUniMPConfiguration *configuration = [[DCUniMPConfiguration alloc] init];
[configuration setShowAnimated:YES];
[configuration setHideAnimated:YES];
[configuration setOpenMode:DCUniMPOpenModePresent];
[configuration setEnableGestureClose:YES];
[configuration setArguments:dict];
[DCUniMPSDKEngine openUniMP:name configuration:configuration completed:^(DCUniMPInstance * _Nullable uniMPInstance, NSError * _Nullable error) {
if (uniMPInstance) {
NSLog(@"打开成功");
}else{
NSLog(@"打开失败:%@",error);
}
}];
}
//-(void)downloadWgt:(NSString *)url appid:(NSString *)appid block:(void (^)(NSString *))block success:(void (^)(void))success{
// NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
// AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration];
// NSLog(@"url:%@",url);
// NSURL *URL = [NSURL URLWithString:url];
// NSURLRequest *request = [NSURLRequest requestWithURL:URL];
//
// NSURLSessionDownloadTask *downloadTask = [manager downloadTaskWithRequest:request progress:^(NSProgress * _Nonnull downloadProgress) {
// //
// NSLog(@"downloadProgress:%f",downloadProgress.fractionCompleted);
// //block([NSString stringWithFormat:@"loading...%f",downloadProgress.fractionCompleted]);
// } destination:^NSURL * _Nonnull(NSURL * _Nonnull targetPath, NSURLResponse * _Nonnull response) {
// NSURL *documentsDirectoryURL = [[NSFileManager defaultManager] URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil];
// return [documentsDirectoryURL URLByAppendingPathComponent:[response suggestedFilename]];
// } completionHandler:^(NSURLResponse * _Nonnull response, NSURL * _Nullable filePath, NSError * _Nullable error) {
// NSLog(@"File downloaded to: %@", filePath);
// if ([DCUniMPSDKEngine releaseAppResourceToRunPathWithAppid:appid resourceFilePath:filePath.path]) {
// NSLog(@"应用资源文件部署成功");
// //直接打开
// success();
// }
// }];
// [downloadTask resume];
//}
-(void)uniMPOnClose:(NSString *)appid{
NSLog(@"小程序关闭");
}
-(void)defaultMenuItemClicked:(NSString *)identifier{
NSLog(@"胶囊点击");
}
@end