diff --git a/EUExFileMgr/EUExFileMgr/EUExFileMgr.h b/EUExFileMgr/EUExFileMgr/EUExFileMgr.h index fd31878..a7e7e1a 100755 --- a/EUExFileMgr/EUExFileMgr/EUExFileMgr.h +++ b/EUExFileMgr/EUExFileMgr/EUExFileMgr.h @@ -26,6 +26,9 @@ #define F_FILE_EXIST 0 #define F_FILE_NOT_EXIST 1 +#define KUEXIS_NSString(x) ([x isKindOfClass:[NSString class]] && x.length>0) +#define KUEXIS_NSMutableArray(x) ([x isKindOfClass:[NSMutableArray class]] && [x count]>0) + @interface EUExFileMgr : EUExBase { NSMutableDictionary *fobjDict; FileExplorer *fExplorer; diff --git a/EUExFileMgr/EUExFileMgr/EUExFileMgr.m b/EUExFileMgr/EUExFileMgr/EUExFileMgr.m index 1e3738a..bd91de2 100755 --- a/EUExFileMgr/EUExFileMgr/EUExFileMgr.m +++ b/EUExFileMgr/EUExFileMgr/EUExFileMgr.m @@ -322,23 +322,46 @@ -(void)isFileExistByID:(NSMutableArray *)inArguments{ [self jsFailedWithOpId:0 errorCode:1090901 errorDes:UEX_ERROR_DESCRIBE_ARGS]; } } -//11.文件浏览器 --(void)explorer:(NSMutableArray *)inArguments { - NSString *inPath = [inArguments objectAtIndex:0]; - if (inPath == nil) { - [super jsFailedWithOpId:0 errorCode:1091001 errorDes:UEX_ERROR_DESCRIBE_ARGS]; +/** + * @brief 文件浏览器 + * @param 协议路径(必须为文件夹路径),若不传或者参数为空,默认为Documents文件 + * + **/ + +- (void)explorer:(NSMutableArray *)inArguments { + + NSString *inPath = @""; + + if (KUEXIS_NSMutableArray(inArguments)) { + + inPath = [inArguments objectAtIndex:0]; + } - if ([inPath length]==0) { - inPath = [File getDocumentsPath:@""]; - }else { - inPath =[super absPath:inPath]; + + if ([inPath length] == 0) { + + inPath = [File getDocumentsPath:inPath]; + + } else { + + inPath = [super absPath:inPath]; + + } + + if (KUEXIS_NSString(inPath) && [File fileisDirectoy:inPath] ) { + + fExplorer = [[FileExplorer alloc] init]; + [fExplorer openWithEuex:self rootPath:inPath]; + + } else { + + [super jsFailedWithOpId:0 errorCode:1091001 errorDes:UEX_ERROR_DESCRIBE_ARGS]; + } - //open a file explorer - fExplorer = [[FileExplorer alloc] init]; - [fExplorer openWithEuex:self rootPath:inPath]; } + //multiExplorer -(void)multiExplorer:(NSMutableArray*)inArguments{ NSString * inPath = nil; diff --git a/EUExFileMgr/uexFileMgr/info.xml b/EUExFileMgr/uexFileMgr/info.xml index bebc8fd..8d5c0b1 100755 --- a/EUExFileMgr/uexFileMgr/info.xml +++ b/EUExFileMgr/uexFileMgr/info.xml @@ -1,8 +1,9 @@ - 11:新增cbWriteFile回调方法,优化RC4加密 + uexName="uexFileMgr" version="3.0.12" build="12"> + 12:uexFileMgr.explorer()接口增加参数保护,增加对路径为文件或文件夹的判断,和Android逻辑保持统一. + 11:新增cbWriteFile回调方法,优化RC4加密 10:解决多选文件打开浏览器显示空白问题 9:新增方法uexFileMgr.renameFile 重命名文件 8:修复uexFileMgr.multiExplorer(path)中path参数无效的BUG