如何将文件复制到Android文件系统中?如何访问它?
如何从Android复制文件到本地?
adb pull /data/data/com.example.sample ./sample/
如何从本地复制文件到Android设备?
adb push ./sample/ /sdcard/sample/
我不确定这是否是你要问的,但这是对你问题的另一种解释:
您可以在开发机器上的项目中将文件放置在 assets
文件夹中。它们将被捆绑到 apk 文件中,然后通过 AssetManager
类访问它们。 从服务或活动类中可以使用类似以下代码:
AssetManager am = getAssets();
InputStream is = am.open("filename");
openFileOutput()
来完成此操作。但请注意,用户始终可以通过ddms访问设备上的文件,但其他应用程序将无法访问存储在您的应用程序存储沙盒中的文件。
编辑根据您的评论,您可能想使用
OutputStream out = openFileOutput("outfile");
从您的代码中写入文件。此代码必须从Activity
或Service
(扩展Context
的内容)中调用。该文件将存储在手机文件系统中,而不是sd卡上。这些文件对普通用户不可访问。如果用户知道如何启用usb调试,则他们将能够访问它们,而这确实没有什么办法可以避免。
您可以使用:
Environment.getExternalStorageDirectory()
如果您的设备有SD卡,那么它将会给您/sdcard
,否则在其他情况下会给您不同的东西。例如Archos。
我之前花了一些时间研究安卓的系统文件,但几乎都是针对安卓x86,我发现在安卓中/system文件夹是只读的。
这是SFS格式的映像文件,这是Linux的只读映像文件格式,因此我认为你无法复制该文件夹内的内容。我不确定有没有root过的安卓可以实现。希望这会对你有所帮助。
你可以通过在文件名前加上点(例如:.myfile)的方式将文件隐藏在sdcard中。