add create directory api for iOS and macOS
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
#include <Foundation/Foundation.h>
|
#include <Foundation/Foundation.h>
|
||||||
|
#include "objc_utils.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __ANDROID__
|
#ifdef __ANDROID__
|
||||||
@@ -141,6 +142,8 @@ bool Asset::create_dir(const std::string& path)
|
|||||||
return PathFileExistsA(path.c_str()) ? true : CreateDirectoryA(path.c_str(), NULL);
|
return PathFileExistsA(path.c_str()) ? true : CreateDirectoryA(path.c_str(), NULL);
|
||||||
#elif __ANDROID__
|
#elif __ANDROID__
|
||||||
return android_create_dir(path);
|
return android_create_dir(path);
|
||||||
|
#elif __IOS__ || __OSX__
|
||||||
|
return apple_create_dir(path);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -334,3 +334,17 @@ void save_image_library(const std::string& path)
|
|||||||
}];
|
}];
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool apple_create_dir(const std::string& path)
|
||||||
|
{
|
||||||
|
NSError* err = nil;
|
||||||
|
NSString* p = [NSString stringWithUTF8String:(path+"/").c_str()];
|
||||||
|
NSURL* url = [NSURL fileURLWithPath:p isDirectory:YES];
|
||||||
|
if (![[NSFileManager defaultManager] createDirectoryAtURL:url withIntermediateDirectories:YES attributes:nil error:&err])
|
||||||
|
{
|
||||||
|
LOG("error creating path: %s", path.c_str());
|
||||||
|
LOG("error creating path: %s", [[err description] cStringUsingEncoding:NSUTF8StringEncoding]);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|||||||
@@ -15,3 +15,4 @@ void uinstall_global_handlers();
|
|||||||
void delete_all_files_in_path(const std::string& source_path);
|
void delete_all_files_in_path(const std::string& source_path);
|
||||||
void export_mp4(const std::string& rec_path, int width, int height, int tot, void(^progress_callback)(float));
|
void export_mp4(const std::string& rec_path, int width, int height, int tot, void(^progress_callback)(float));
|
||||||
void save_image_library(const std::string& path);
|
void save_image_library(const std::string& path);
|
||||||
|
bool apple_create_dir(const std::string& path);
|
||||||
|
|||||||
Reference in New Issue
Block a user