android - 通过命令行(Makefile)手动创建android apk

标签 android c++ gradle makefile android-ndk

问题

我想创建一个安卓应用

  • 仅通过 vimmakefile
  • 没有 gradle,没有 ant,没有 maven,没有 android.mk 和所有其他东西

为什么?

它是为 Android 设备包装的高性能 C++ 代码。

  • 因此,我不需要 99% 的 gradles 服务
  • 通过 gradle 为小程序构建 15 秒以上的时间?这是 Not Acceptable 。
  • 在 gradle 中合并 native 代码是荒谬的。这些 gradle 人员提出了一个实验性 ndk 插件,它不断改变语法。
  • 我只针对 ARMv8-A。我将有部分 AARCH64 汇编代码。我使用预处理器 m4 在编译之前生成 *.cpp。无法想象 gradle 有这方面的东西。

我的进步

我知道以下步骤是必需的:

  1. 通过 keytool$JAVA_HOME/bin 创建 keystore
  2. 通过 $JAVA_HOME/bin 中的 javac 编译源文件。
  3. 通过 dx$ANDROID_HOME/built-tools 为设备创建 Dalvik 可执行文件
  4. 通过 aapt$ANDROID_HOME/built-tools 创建 .apk 文件。
  5. 通过 $JAVA_HOME/bin 中的 jarsigner 对 apk 包进行签名。
  6. 通过 $ANDROID_HOME/built-tools 中的 zipalign 对齐 apk 包。
  7. 通过 adb$ANDROID_HOME/tools 在手机上安装软件。

应用程序在启动时崩溃。即使我想创建一个空白 Activity 。

-

最佳答案

好的,我想通了。我将示例代码放在 https://github.com/skanti/Android-Manual-Build-Command-Line

希望对大家也有帮助。

关于android - 通过命令行(Makefile)手动创建android apk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39091845/

相关文章:

android - 适用于 Android 的 Facebook SDK 3.0 - "my friends"请求永远不会返回

C++ XOR加密-解密问题

c++ - STL deque 实现的每个 "vectors"是否总是具有相同的大小?

c++ - 从参数中选择模板返回类型

android - 在项目 'publishApkRelease'中找不到任务 ':app'

android - 再次选择日期时,如何在 EditText 中显示最后选择的日期?

Android Instrumentation 测试获取资源文件句柄

android - 关于 gradle.properties、settings.gradle、gradle-wrapper.properties 和 local.properties 的一些说明

java - 无法解析 JNIfunction : Android ndk

Gradle exec 任务返回非零退出值并使构建失败但我不想失败而是执行另一个任务