15

我试图在发布模式下构建我的 android 项目。为了在发布模式下构建我的项目,我需要设置任何优化标志吗?

4

1 回答 1

27

除非您已创建 Application.mk 或在 AndroidManifest.xml 中将您的应用程序定义为可调试,否则您无需执行任何操作,因为默认情况下,应用程序的模块由 ndk-build 脚本在发布模式下编译。

否则,您可以在 Application.mk 文件中使用 APP_OPTIM 指令:

APP_OPTIM := debug
APP_PLATFORM := android-14
APP_STL := gnustl_static
APP_ABI := armeabi armeabi-v7a

从 android-ndk-r8d/docs/APPLICATION-MK.html 文件:

APP_OPTIM
    This optional variable can be defined to either 'release' or
    'debug'. This is used to alter the optimization level when
    building your application's modules.

    A 'release' mode is the default, and will generate highly
    optimized binaries. The 'debug' mode will generate un-optimized
    binaries which are much easier to debug.

    Note that if your application is debuggable (i.e. if your manifest
    sets the android:debuggable attribute to "true" in its <application>
    tag), the default will be 'debug' instead of 'release'. This can
    be overridden by setting APP_OPTIM to 'release'.

    Note that it is possible to debug both 'release' and 'debug'
    binaries, but the 'release' builds tend to provide less information
    during debugging sessions: some variables are optimized out and
    can't be inspected, code re-ordering can make stepping through
    the code difficult, stack traces may not be reliable, etc...
于 2013-01-29T09:47:55.697 回答