2010-09-13 117 views
2

我正在将一个C++库代码移植到android中(最初是为linux编写的)。Android中的临时文件夹

该库已构建并由java应用程序使用。

在之前的linux代码中,库用于创建和更新系统的/ tmp文件夹中的日志文件......但不幸的是,在android中没有这样的临时目录。

似乎我不能使用使用应用程序缓存来保存文件由于几个原因。

1. User need to view the file after exiting the app 

2. The library need to be reused by different applications in future. 

3. The log file is created by the native library(and not the java app) 

(请纠正我,如果一些/所有的我的理解是错误的)

而且我发现,大多数的目录中的默认设置是写保护..

我怎样才能解决问题,没有'生根'的操作系统? 请帮助..

回答

0

修改C/C++代码以使用Java代码提供的目录。让Java代码通过在Environment.getExternalStorageDirectory()下创建的某个子目录。

+0

这将在应用程序自己的缓存中创建一个文件,对吧? – Dhanesh 2010-09-13 11:06:25

+0

@Dhanesh:没有符合条件#1的“应用程序自己的缓存”。不过,欢迎您在以应用程序命名的外部存储上创建一个目录。 – CommonsWare 2010-09-13 15:27:49

+0

感谢您的澄清..还有一个问题,如果我在共同的目录中没有写入权限,该怎么办?(我可以做到没有'生根')吗? – Dhanesh 2010-09-14 16:59:52