1

因此,从文档中,我弄清楚了如何将文件“硬编码”到 android studio 中(基本上在 androidstudioprojects 目录中),并且可以从我的 python 脚本中成功访问它们。(使用

join(dirname(test.__file__), filename)

) 等等等等

但是,我需要能够让用户上传一些东西到应用程序,应用程序在手机的外部存储中创建自己的目录,将他们上传的文件放在那里,我希望能够将这些文件的路径之一传递到我的python脚本,它可以成功检索它们。我想传递类似的东西:

/data/user/0/com.myapp.blah/mycustomdir/myfilename.xlsx

我的 python 脚本将能够提取该文件并对其进行处理。我该怎么做呢?

编辑:看起来我有它,但我需要确保我做对了。我会留下这个,因为通过搜索 chaquopy 标签我找不到其他人问这种类型的问题,所以也许它会帮助其他人。对我来说,这似乎就像获取上面的文件路径并将其插入一样简单:

"/data/user/0/com.myapp.blah/mycustomdir/" + filename

我想你可以将整个文件路径传递到你的脚本中,但对我来说,我想只传递文件名,所以我这样做了,它似乎已经奏效,不需要 join 或 dirname 函数。

4

1 回答 1

1

如果您已经知道应用程序的 Java 部分中的路径,那么您可以将其作为字符串参数传递给 Python:不需要什么特别的。

或者,如果您想在应用程序的 Python 部分构建这些路径之一,那么最好的方法是执行以下操作:

from com.chaquo.python import Python
context = Python.getPlatform().getApplication()

然后,您可以调用任何Context方法,如getFilesDir,getExternalFilesDir等。

于 2019-06-27T21:16:16.553 回答