63 lines
1.8 KiB
Python
63 lines
1.8 KiB
Python
|
'''
|
||
|
iOS Storage Path
|
||
|
--------------------
|
||
|
'''
|
||
|
|
||
|
from plyer.facades import StoragePath
|
||
|
from pyobjus import autoclass
|
||
|
import os
|
||
|
|
||
|
NSFileManager = autoclass('NSFileManager')
|
||
|
|
||
|
# Directory constants (NSSearchPathDirectory enumeration)
|
||
|
NSApplicationDirectory = 1
|
||
|
NSDocumentDirectory = 9
|
||
|
NSDownloadsDirectory = 15
|
||
|
NSMoviesDirectory = 17
|
||
|
NSMusicDirectory = 18
|
||
|
NSPicturesDirectory = 19
|
||
|
|
||
|
|
||
|
class iOSStoragePath(StoragePath):
|
||
|
|
||
|
def __init__(self):
|
||
|
self.defaultManager = NSFileManager.defaultManager()
|
||
|
|
||
|
def _get_home_dir(self):
|
||
|
return os.path.expanduser('~/')
|
||
|
|
||
|
def _get_external_storage_dir(self):
|
||
|
return 'This feature is not implemented for this platform.'
|
||
|
|
||
|
def _get_root_dir(self):
|
||
|
return 'This feature is not implemented for this platform.'
|
||
|
|
||
|
def _get_documents_dir(self):
|
||
|
return self.defaultManager.URLsForDirectory_inDomains_(
|
||
|
NSDocumentDirectory, 1).firstObject().absoluteString.UTF8String()
|
||
|
|
||
|
def _get_downloads_dir(self):
|
||
|
return self.defaultManager.URLsForDirectory_inDomains_(
|
||
|
NSDownloadsDirectory, 1).firstObject().absoluteString.UTF8String()
|
||
|
|
||
|
def _get_videos_dir(self):
|
||
|
return self.defaultManager.URLsForDirectory_inDomains_(
|
||
|
NSMoviesDirectory, 1).firstObject().absoluteString.UTF8String()
|
||
|
|
||
|
def _get_music_dir(self):
|
||
|
return self.defaultManager.URLsForDirectory_inDomains_(
|
||
|
NSMusicDirectory, 1).firstObject().absoluteString.UTF8String()
|
||
|
|
||
|
def _get_pictures_dir(self):
|
||
|
return self.defaultManager.URLsForDirectory_inDomains_(
|
||
|
NSPicturesDirectory, 1).firstObject().absoluteString.UTF8String()
|
||
|
|
||
|
def _get_application_dir(self):
|
||
|
return self.defaultManager.URLsForDirectory_inDomains_(
|
||
|
NSApplicationDirectory, 1).firstObject().absoluteString.\
|
||
|
UTF8String()
|
||
|
|
||
|
|
||
|
def instance():
|
||
|
return iOSStoragePath()
|