£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
B
    Ĥa                 @  s   d dl mZ d dlZd dlZd dlZd dlmZ ddlmZ G dd deZ	eddd	d
ddZ
eddd	d
ddZdgZdS )    )annotationsN)	lru_cache   )PlatformDirsABCc               @  s   e Zd ZdZeddddZeddddZedddd	Zeddd
dZeddddZ	eddddZ
eddddZeddddZeddddZdS )Androidz
    Follows the guidance `from here <https://android.stackexchange.com/a/216132>`_. Makes use of the
    `appname <platformdirs.api.PlatformDirsABC.appname>` and
    `version <platformdirs.api.PlatformDirsABC.version>`.
    str)returnc             C  s   |  t dS )zd:return: data directory tied to the user, e.g. ``/data/user/<userid>/<packagename>/files/<AppName>``files)_append_app_name_and_version_android_folder)self r   E/opt/alt/python37/lib/python3.7/site-packages/platformdirs/android.pyuser_data_dir   s    zAndroid.user_data_dirc             C  s   | j S )z@:return: data directory shared by users, same as `user_data_dir`)r   )r   r   r   r   site_data_dir   s    zAndroid.site_data_dirc             C  s   |  t dS )z
        :return: config directory tied to the user, e.g. ``/data/user/<userid>/<packagename>/shared_prefs/<AppName>``
        Zshared_prefs)r
   r   )r   r   r   r   user_config_dir   s    zAndroid.user_config_dirc             C  s   | j S )zH:return: config directory shared by the users, same as `user_config_dir`)r   )r   r   r   r   site_config_dir#   s    zAndroid.site_config_dirc             C  s   |  t dS )zj:return: cache directory tied to the user, e.g. e.g. ``/data/user/<userid>/<packagename>/cache/<AppName>``cache)r
   r   )r   r   r   r   user_cache_dir(   s    zAndroid.user_cache_dirc             C  s   | j S )zB:return: state directory tied to the user, same as `user_data_dir`)r   )r   r   r   r   user_state_dir-   s    zAndroid.user_state_dirc             C  s   | j }| jrtj|d}|S )z
        :return: log directory tied to the user, same as `user_cache_dir` if not opinionated else ``log`` in it,
          e.g. ``/data/user/<userid>/<packagename>/cache/<AppName>/log``
        log)r   opinionospathjoin)r   r   r   r   r   user_log_dir2   s    zAndroid.user_log_dirc             C  s   t  S )zf
        :return: documents directory tied to the user e.g. ``/storage/emulated/0/Documents``
        )_android_documents_folder)r   r   r   r   user_documents_dir=   s    zAndroid.user_documents_dirc             C  s   | j }| jrtj|d}|S )z
        :return: runtime directory tied to the user, same as `user_cache_dir` if not opinionated else ``tmp`` in it,
          e.g. ``/data/user/<userid>/<packagename>/cache/<AppName>/tmp``
        tmp)r   r   r   r   r   )r   r   r   r   r   user_runtime_dirD   s    zAndroid.user_runtime_dirN)__name__
__module____qualname____doc__propertyr   r   r   r   r   r   r   r   r   r   r   r   r   r      s   r   )maxsizer   )r   c              C  s~   y(ddl m}  | d}|   }W nP tk
rx   td}x0tj	D ]}|
|rJ|dd }P qJW tdY nX |S )z':return: base folder for the Android OSr   )	autoclasszandroid.content.Contextz /data/(data|user/\d+)/(.+)/filesz/filesz&Cannot find path to android app folder)jniusr&   ZgetFilesDirZgetParentFilegetAbsolutePath	Exceptionrecompilesysr   matchsplitOSError)r&   Contextresultpatternr   r   r   r   r   P   s    

r   c              C  sN   y0ddl m}  | d}| d}||j }W n tk
rH   d}Y nX |S )z,:return: documents folder for the Android OSr   )r&   zandroid.content.Contextzandroid.os.Environmentz/storage/emulated/0/Documents)r'   r&   ZgetExternalFilesDirZDIRECTORY_DOCUMENTSr(   r)   )r&   r0   EnvironmentZdocuments_dirr   r   r   r   e   s    
r   )
__future__r   r   r*   r,   	functoolsr   Zapir   r   r   r   __all__r   r   r   r   <module>   s   E