2012-01-27 103 views
0

因此,我想防止用户在运行应用程序时将文件复制出来。防止应用程序运行时在Android设备上进行文件复制

1)是否有一种更简单的方法来检测文件是否从我的设备上复制而不是通过检查adb守护程序是否正在运行?

2)有没有一种简单的方法来枚举Android应用上运行的所有进程?

我知道Android并不是一个非常安全的系统,但我至少希望让人们难以复制我的应用程序中的文件。

编辑

为了澄清我的问题,所有的我都存储在磁盘上的文件进行加密。我担心的是,在我的应用程序中访问这些文件时,我需要确定这些文件。我试图阻止某人在应用程序运行时窃取这些文件。如果有人退出应用程序,我已经删除了未加密的文件。

此外,我专注于亚行,因为我正在考虑尝试删除未加密的文件,如果通过USB连接。不过,我知道你仍然可以通过无线网络在固定电话上运行adb。现在我想到了,您可能也可以通过无线网络在根植电话上传输文件。

此外,显然没有设备上的文件不是一个选项。

+0

您是否考虑过对文件进行加密? – 2012-01-27 17:45:34

回答

4

您好像专注于adb,原因不明。

对于内部存储时,用户无法复制的文件从使用adb一个装置的内部存储的,除非该设备生根。如果该设备是根植的,则他们不需要adb来复制文件。

关于外部存储器,这是专门设计用于允许任何应用程序或用户从中复制文件,同样没有adb

因此,试图检测adb是毫无意义的。

我知道Android并不是一个非常安全的系统,但我至少想让人们很难将文件复制到我的应用程序中。

然后不要把文件放在设备上的第一个地方。

0

我不知道什么是“抄袭了我的应用程序文件”是指(是你的应用程序旨在展示/提供的文件,或者是你指的是资源和其他文件通过您的应用程序使用)。

无论如何,你都在浪费时间。 Android是一个非常开放的平台,并且(特别是在根植设备上),人们总是会找到一种方法来复制数据,如果他们愿意的话。

+0

我的关注点是植根于设备。 – onit 2012-01-27 17:47:23

1

我不知道,如果你的意思是用户会使用你的应用程序,并把他的手机上USB模式,并进行传输文件了你的应用程序文件夹,而你的应用程序仍在运行?

如果在运行时需要为了某些文件您的应用程序功能,不能只是你让他们私有的应用程序?如this article所示。或者根本不要将文件放在设备上:)

+0

如果它能防止在根目录设备上复制,这将是值得的。我目前不会让它们对我的应用程序保密,因为有些文件是媒体文件,需要通过VideoView读取它们。我可以编写一些自定义mediaplayer代码,但如果我可以保护根目录设备上的内容,这将是值得的。 – onit 2012-01-27 18:47:38

+0

令人伤心的是,无论资源暴露如何,使用root访问权限的用户都可以做他们想要的任何事情。即使SharedPreferences可以通过root用户访问:/ – 2012-01-27 18:52:34

+0

这就是我的想法,但我希望有一种方法... – onit 2012-01-27 19:04:47

相关问题