APK 文件如何包含 DLL 文件? Android可以运行DLL文件吗?
Posted
技术标签:
【中文标题】APK 文件如何包含 DLL 文件? Android可以运行DLL文件吗?【英文标题】:How does an APK file include DLL files? Can Android run DLL files? 【发布时间】:2018-10-01 23:18:58 【问题描述】:我反编译了一个使用 Unity 引擎开发的用于教育目的的 android 游戏 .apk 文件。
当我遇到 DLL 文件时,我感到非常惊讶。
这怎么可能?
【问题讨论】:
它不是非托管 dll 代码。它只是一个 C# 托管代码,Unity/Mono 可以在运行时加载和执行。如果那是一个 umanaged(C++) 编译的 dll,它将无法工作。 【参考方案1】:它可以包含 dll 文件,因为它还包含一个可以执行这些 dll 文件的运行时。
Unity3D 和 Xamarin 都包含在应用启动时启动的单声道。
当单声道世界需要从 Java 世界调用某些东西时,它使用 Java 本地接口 (JNI) 来执行此操作。
至于逆向工程 dll 文件,您通常可以使用 .NET 反编译器打开这些文件,例如 ildasm、dotPeek、.NET Reflector 等等。
【讨论】:
以上是关于APK 文件如何包含 DLL 文件? Android可以运行DLL文件吗?的主要内容,如果未能解决你的问题,请参考以下文章