2013-04-13 53 views
1

我似乎无法找到一个答案,我的问题在其他地方,所以也许它不是直线前进,因为我所期望的......如何判断我的Android应用程序正在使用哪些库?

有没有办法找出哪些库我的Android应用程序使用?很可能使用Delvik虚拟机,但是我怎么知道我是否正在使用媒体框架库或WebKit或其他任何项目?

听起来像一个不必要的问题,但我需要写一篇关于我开发的应用程序的文章,这些信息会有帮助。

在此先感谢!

回答

1

如果使用外部库,那些将包含在你的/ libs文件夹中。所以你会知道你包含哪些库。

如果您启用了proguard,那么该工具将删除未使用的类,字段和方法。 ProGuard工具通过删除未使用的代码并使用语义上不明确的名称重命名类,字段和方法来缩小,优化和混淆代码。结果是一个更小的.apk文件,它更难以反向工程。因此,并不是库中的所有类都被使用。如果启用了proguard,那些未使用的类将被删除。

您的应用程序将android.jar作为引用库。它不包含在.apk文件中。您可以解压缩.apk并查看内容。

这些android。*类不是您的APK文件的一部分,因此不受ProGuard的影响。真正的类在运行时已经在你的进程中,并由固件放在那里。

enter image description here

所以,你可以去你的AndroidSDK。转到平台。打开一个文件夹,比如android-16(对于api版本16)。你会看到android.jar。您可以解压缩该jar文件并查看它下面的文件。

打开android文件夹,您将成为数据库,媒体,webkit等。

你应该看看这个链接。 http://developer.android.com/about/versions/index.html

开发人员可以完全访问核心应用程序使用的相同框架API。

我们在最顶层开发应用程序。假设你想将数据存储到数据库,那么你的应用程序将使用sqlite来存储数据。

SQLite - 一个功能强大且轻量级的关系数据库引擎,适用于所有应用程序。

对于其他图书馆也是如此。所以这取决于你的应用程序。

0

通常取决于您的应用程序。 Android包含许多来源的程序代码。如你所知,例如Webkit,但也有许多来自Apache项目或json.org的不同类。

我会说只是文档,你使用Android SDK。专家应该有一个想法,包括什么。

相关问题