2012-07-31 56 views
5

我的應用程序的基本功能是顯示圖像。我可以在PC上提取apk包的內容。很容易看到包中的所有資產 - 包括所包含的圖像。我想隱藏這些圖像。它們只能在運行時在用戶安裝軟件包的設備上顯示。如何隱藏apk的圖片?

有什麼辦法可以解決這個問題嗎?謝謝!

回答

0

存儲加密或以某種方式加密的圖像。

由於密鑰必須位於APK中,因此確定的攻擊者總是可以破解,所以不要擔心任何特別強的事情。使用代碼中的密鑰進行簡單密碼足以阻止通常過度好奇的用戶。

+0

我想過不進入加密和解密過程,但現在還沒有做。 – 2012-07-31 08:27:08

+0

你的答案是無用的,當然我們需要加密它。問題是如何?任何好的框架或教程? – OMGPOP 2012-12-21 13:58:44

2

那麼這種東西是有辦法的。

  1. 在sql-light中用Image表創建一個數據庫。
  2. 將所有圖像存儲在BLOB字段中。
  3. 用戶填入APK時的存在或數據庫
  4. 從數據庫中讀取所有圖像並顯示在用戶界面上。
  5. 當用戶卸載應用程序;刪除數據庫也是如此。

我知道這很大,但這是安全的方式來保護您的圖像,並使APK。

希望這有助於

+0

謝謝你的回覆,但是這裏的圖像加載非常繁重,需要使用db並且必須攜帶每個圖像。 – 2012-07-31 08:23:12

+0

不要儲存屬於AP用戶界面的圖像,但要保存那些您正在管理的圖像......例如,不要保存橫幅圖像,標題圖像,頁腳圖像,菜單圖像等,但存儲提供給用戶的圖像運行應用程序。例如,如果動物信息應用商店中的動物數據庫圖像,並且不保存其他圖像 – 2012-07-31 08:26:07

+0

@arshadkr:Sqlite速度非常快。但缺點是它需要從apk中提取,而圖像通常可以直接從存檔中讀取。 – 2012-07-31 08:32:48

0

另一種方式是爲用戶生成一個唯一的標識符,然後傳遞一個唯一的ID後,下載從遠程服務器的圖像。遠程服務器讀取唯一ID並根據該唯一ID加上可能放入代碼的其他字符串對文件進行加密。