【Android 逆向】Android 进程注入工具开发 ( Visual Studio 开发 Android NDK 应用 | 使用 Makefile 构建 Android 平台 NDK 应用 )(二)

简介: 【Android 逆向】Android 进程注入工具开发 ( Visual Studio 开发 Android NDK 应用 | 使用 Makefile 构建 Android 平台 NDK 应用 )(二)

这是编译 NDK 项目的通用 Makefile 配置 : 使用前只需要修改 NDK 和 NDK_ROOT 中的自己的 NDK 即可 ;


NDK = D:/001_Develop/001_SDK/Sdk/ndk/android-ndk-r14b/ndk-build.cmd
NDK_ROOT = D:/001_Develop/001_SDK/Sdk/ndk/android-ndk-r14b
MAKE = "$(NDK_ROOT)/prebuilt/windows-x86_64/bin/make.exe"
BUILD_SCRIPT = "$(NDK_ROOT)/build/core/build-local.mk"
PROJ_PATH = NDK_PROJECT_PATH=.
APP_SCRIPT = APP_BUILD_SCRIPT=./Android.mk NDK_APPLICATION_MK=./Application.mk
BUILD_COMMAND = $(NDK) NDK_PROJECT_PATH=. $(APP_SCRIPT)
# D:/001_Develop/001_SDK/Sdk/ndk/android-ndk-r14b/ndk-build.cmd NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk NDK_APPLICATION_MK=./Application.mk
.PHONY:all
all:
  $(NDK) $(PROJ_PATH) $(APP_SCRIPT)
  @echo done!
clean:
  $(NDK) $(PROJ_PATH) $(APP_SCRIPT) clean
  @echo done!
rebuild:
  $(NDK) $(PROJ_PATH) $(APP_SCRIPT) -B
  @echo done!






三、配置 Android.mk


Android.mk :


LOCAL_PATH    := $(call my-dir)
include     $(CLEAR_VARS)
# 链接 log 日志库
LOCAL_LDLIBS    += -llog 
# 编译可执行程序名称
LOCAL_MODULE    := hello
# 指定源码
LOCAL_SRC_FILES   := main.c
# 指定输出目录
# NDK_APP_DST_DIR   := ../Debug/$(TARGET_ARCH_ABI)
# 编译可执行程序
include     $(BUILD_EXECUTABLE)






四、配置 Application.mk


Application.mk :


# 指定要编译的 CPUU 架构
APP_ABI     := armeabi armeabi-v7a x86
# 指定用于此应用的 C++ 标准库
APP_STL     := gnustl_static
# 指定编译的 Android 平台 , 一般是 Android 兼容的最低版本 
APP_PLATFORM    := android-19






五、主函数源码


main.c 源码 :


#include <stdio.h>  
int main(int argc, char** argv) {
  printf("Hello World");
  return 0;
}





六、编译 NDK 项目


右键点击 " 解决方案资源管理器 " , 在弹出的菜单中 , 选择 " 仅用于项目(J) -> 仅生成 VS_NDK_Makefile(B) " 选项 ;

image.png



编译结果 :


image.png



目录
打赏
0
0
0
0
39
分享
相关文章
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
227 20
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
74 4
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
探索安卓开发:打造你的首个天气应用
在这篇技术指南中,我们将一起潜入安卓开发的海洋,学习如何从零开始构建一个简单的天气应用。通过这个实践项目,你将掌握安卓开发的核心概念、界面设计、网络编程以及数据解析等技能。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供一个清晰的路线图和实用的代码示例,帮助你在安卓开发的道路上迈出坚实的一步。让我们一起开始这段旅程,打造属于你自己的第一个安卓应用吧!
142 14
打造个性化安卓应用:从设计到开发的全面指南
在这个数字时代,拥有一个定制的移动应用不仅是一种趋势,更是个人或企业品牌的重要延伸。本文将引导你通过一系列简单易懂的步骤,从构思你的应用理念开始,直至实现一个功能齐全的安卓应用。无论你是编程新手还是希望拓展技能的开发者,这篇文章都将为你提供必要的工具和知识,帮助你将创意转化为现实。
探索安卓开发:构建你的第一个“Hello World”应用
在安卓开发的浩瀚海洋中,每个新手都渴望扬帆起航。本文将作为你的指南针,引领你通过创建一个简单的“Hello World”应用,迈出安卓开发的第一步。我们将一起搭建开发环境、了解基本概念,并编写第一行代码。就像印度圣雄甘地所说:“你必须成为你希望在世界上看到的改变。”让我们一起开始这段旅程,成为我们想要见到的开发者吧!
117 0
|
11月前
Visual Studio 2022 中VLD库如何安装
Visual Studio 2022 中VLD库如何安装
772 1
|
11月前
Visual Studio 2022 中VLD库如何安装
Visual Studio 2022 中VLD库如何安装
771 0
Visual Studio 2017 安装及使用(新手)
Visual Studio 2017 安装及使用(新手)
1617 0
通义灵码 Visual Studio 下载安装指南(附安装包)
本安装步骤适用于 Windows 10 及以上操作系统中安装和使用通义灵码。
133495 20

热门文章

最新文章

相关实验场景

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等