2017-01-22 124 views
-1

我正在寫一個應用程序,將文件上傳到另一個設備。我必須限制如何將文件類型分享給其他設備。我可以檢查文件的擴展名,但有沒有更安全的方式來檢查文件是否是apk。Android:是否可以檢查該文件是否是一個apk文件,如果沒有擴展提供

+0

的可能的複製[獲取真正的文件擴展名-Java代碼( http://stackoverflow.com/questions/2091014/get-real-file-extension-java-code) – chiliNUT

+0

如果您認爲我的答案涵蓋了您要查找的內容,那麼您可以將其設置爲接受的答案嗎? –

回答

2

是的,你可以。 Android apk文件是zip archive

因此,您可以檢查該文件是否爲zip文件,並確認存在classes.dexAndroidManifest.xml文件。

+0

你知道如何進入該文件以編程檢查它嗎? – LittleFunny

+0

我通過使用JarFile類找到了解決方案並查找了清單文件的條目 – LittleFunny

0

有可能這樣做類:

new MimeTypeMap() 

根據Android文檔應該給予正確的結果:

Two-way map that maps MIME-types to file extensions and vice versa.

+1

這取決於原始問題試圖避免的文件擴展名 - https://docs.oracle.com/javase/7/docs /api/javax/activation/MimetypesFileTypeMap.html#getContentType(java.io.File) –

+0

:/ ...你確定...這應該檢查MIME類型...不是分機 – MohammedAlSafwan

+0

是的,如果文檔是正確的,它將通過它比較的文件擴展名的映射進行,除了MimetypesFileTypeMap在Android SDK中不可用。 –

相關問題