2015-05-04 54 views
3

我想知道是否有一種方法可以在活動中通過Java代碼在Android應用程序中刪除res中的資源文件夾。是否可以使用java代碼刪除可繪製的文件夾?

想象一下,我在付費應用程序的drawable-nodpi文件中有一個「許可證檢查器」或「付款檢查器」,我想要的是如果該「許可證」無效,它會刪除裏面的文件該文件夾(drawable-nodpi)以及該文件夾,在我的活動中使用了一些代碼行。

在此先感謝您的任何幫助或信息。

+0

你不能,但即使你我能猜到這不會解決這些文件未經授權的訪問的問題。如果您擔心沒有許可證的人會使用這些文件,通過從apk中提取這些文件,他仍然可以訪問該完整版apk,方法是禁用網絡,以便您的許可證檢查無效,或者他可以訪問完整apk沒有運行它。如果您將一些資源打包到您的應用程序中 - >可以提取並使用它們。除非在包裝舞臺上以某種方式混淆。 – dimsuz

回答

3

我想知道是否有一種方法可以在活動中通過Java代碼在Android應用程序中刪除res中的文件夾。

號資源和資產是隻讀的在運行時。

-1

是的,這是可能的,但是你必須考慮的是Android OS的實際安全性是如何工作的。

請考慮以下事項: 在標準設備上(無根訪問)Android的安全性很大程度上依賴於用戶/組linux的系統,該系統規定如果您屬於特定種類的用戶組的訪問。

Android應用程序屬於「自己」的用戶,因此可能無法訪問任何其他文件,或可能屬於別的進程。

如果您想用java代碼刪除特定的目錄,文件等,您需要成爲root用戶,或者使用特定Android發行版的工程版本,並通過將其更改爲根用戶組。

最後考慮一下,android是否打算這樣工作? 答案是否定的,因爲這將是系統中的一個可利用的突破口,允許應用程序執行這類任務。

0

快速回答是否定的。

對於您的問題但是,你可以只停留在你的應用程序中顯示的可繪製。這將是非常容易的事情。繪圖仍然在res/drawable文件夾中,但它們不會再顯示。

你可以做的另一件事是許可證檢查已經完成下載後在運行時的文件,但這樣的解決方案將涉及您的最終更多的工作。

相關問題