Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序包的路径_Java_Android_Path_Io_Package - Fatal编程技术网

Java 应用程序包的路径

Java 应用程序包的路径,java,android,path,io,package,Java,Android,Path,Io,Package,我只专注于为将安装在手机内存中的应用制作应用 是否有任何方法可以动态地知道应用程序包的路径(Environment.get…?或其他可以使用的标志)?我担心的是,如果要恢复数据库,必须提供目标路径。这取决于应用程序所在的位置(sd卡与内存)。您是想获取类路径的位置,还是想获取类本身的位置(类路径+包路径) 要获取类路径的位置,可以执行以下操作: String location = Boot.class.getProtectionDomain().getCodeSource().getLo

我只专注于为将安装在手机内存中的应用制作应用


是否有任何方法可以动态地知道应用程序包的路径(Environment.get…?或其他可以使用的标志)?我担心的是,如果要恢复数据库,必须提供目标路径。这取决于应用程序所在的位置(sd卡与内存)。

您是想获取类路径的位置,还是想获取类本身的位置(类路径+包路径)

要获取类路径的位置,可以执行以下操作:

    String location = Boot.class.getProtectionDomain().getCodeSource().getLocation().getPath();
    location = URLDecoder.decode(location, "UTF-8").replaceAll("\\\\", "/");

引导将被任何类替换。

您是想获取类路径的位置,还是类本身的位置(类路径+包路径)

要获取类路径的位置,可以执行以下操作:

    String location = Boot.class.getProtectionDomain().getCodeSource().getLocation().getPath();
    location = URLDecoder.decode(location, "UTF-8").replaceAll("\\\\", "/");

Boot将被任何类替换。

我正在尝试动态获取安装程序的目录,而不是静态编码。这有意义吗?我相信是的,这段代码动态地获取了应用程序的类路径。它唯一的静态部分是Boot.class,它可以被任何类替换,甚至可以被getClass()替换。我的启动类是我的jar应用程序的主类,它需要定位jar,以便它可以动态配置启动以使用所需的库和选项运行jar。这个应用程序目录的定位不是你想要做的?Vulcan-我刚刚找到了我想要的。在android文档中,它提到程序文件仍然驻留在data/data/package下的内存中。因此,我的数据库将转到与正常情况相同的位置。我试图动态地获取安装程序的目录,而不是静态地对其进行编码。这有意义吗?我相信是的,这段代码动态地获取了应用程序的类路径。它唯一的静态部分是Boot.class,它可以被任何类替换,甚至可以被getClass()替换。我的启动类是我的jar应用程序的主类,它需要定位jar,以便它可以动态配置启动以使用所需的库和选项运行jar。这个应用程序目录的定位不是你想要做的?Vulcan-我刚刚找到了我想要的。在android文档中,它提到程序文件仍然驻留在data/data/package下的内存中。因此,我的数据库将转到与正常情况相同的位置。