创建NativeActivity项目(Eclipse)

2024-05-04 17:58

本文主要是介绍创建NativeActivity项目(Eclipse),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

新建android项目,添加native支持

移除JAVA Build Path对src目录的引用,并从硬盘上删除该文件夹

Project Properties | Java | Build Path | Source

修改AndroidManifest.xml

android:theme = "@android:style/Theme.NoTitleBar.Fullscreen"
<activityandroid:name = "android.app.NativeActivity"...<meta-data android:name="android.app.lib_name"android:value="???"/>
</activity>

创建jni/main.cpp

#include <android/log.h>
#include <android_native_app_glue.h>int32_t inputEventHandler(struct android_app* app,AInputEvent* event) {//deal with input event
}
void cmdEventHandler(struct android_app* app,int32_t cmd) {//deal with cmd
}
void android_main(android_app* pApplication) {app_dummy();                                                    //一定要保留该语句__android_log_print(ANDROID_LOG_INFO,"myTag","hello%d",123);pApplication->onAppCmd = cmdEventHandler;pApplication->onInputEvent = inputEventHandler;int32_t result;int32_t events;android_poll_source * source;while(true) {result = ALooper_pollAll(-1,NULL,&events,(void**)&source);if(result >=0) {if(source) {source->process(mApplication, source);}if(pApplication->destroyRequested) {return;}}   }
}

修改jni/Android.mk

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)                              #模块开始,清理全局变量
LS_CPP=$(subst $(1)/,,$(wildcard $(1)/*.cpp))      #自定义函数LS_CPP
LOCAL_MODULE := ???                                 #模块名
LOCAL_SRC_FILES := $(call LS_CPP,$(LOCAL_PATH))       #源文件
LOCAL_LDLIBS := -landroid -llog                     #依赖的链接库(无需编译)
LOCAL_STATIC_LIBRARIES := android_native_app_glue   #依赖的模块(可能需要编译)
include $(BUILD_SHARED_LIBRARY)                        #模块结束,编译成动态链接库$(call import-module,android/native_app_glue)      #编译android_native_app_glue模块

这篇关于创建NativeActivity项目(Eclipse)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/959780

相关文章

Springboot项目启动失败提示找不到dao类的解决

《Springboot项目启动失败提示找不到dao类的解决》SpringBoot启动失败,因ProductServiceImpl未正确注入ProductDao,原因:Dao未注册为Bean,解决:在启... 目录错误描述原因解决方法总结***************************APPLICA编

在IntelliJ IDEA中高效运行与调试Spring Boot项目的实战步骤

《在IntelliJIDEA中高效运行与调试SpringBoot项目的实战步骤》本章详解SpringBoot项目导入IntelliJIDEA的流程,教授运行与调试技巧,包括断点设置与变量查看,奠定... 目录引言:为良驹配上好鞍一、为何选择IntelliJ IDEA?二、实战:导入并运行你的第一个项目步骤1

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

python如何创建等差数列

《python如何创建等差数列》:本文主要介绍python如何创建等差数列的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python创建等差数列例题运行代码回车输出结果总结python创建等差数列import numpy as np x=int(in

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项