当前位置: 首页 > article >正文

Android Studio使用c++编写

效果图

1、创建一个c++支持的项目。

2、创建c++类

这里根据实际需要添加相应的文件。

如添加一个c++类的引导窗口中填写类名称即可。

完成后,这里就根据实现设计进行c++的功能函数开发了。

3、修改cmake文件

在cmake文件中,添加你的文件名称。

当然还一些情况是需要增加模块依赖的,这个需要好好研究了。

参考官方文档:

向您的项目添加 C 和 C++ 代码  |  Android Studio  |  Android Developers

4、添加声明关联函数

找到MainActivity文件,添加类型的调用声明。

5、实现相关函数

利用智能补正工具,在c++写函数定义体。

在c++文件中,编写相关调用。

extern "C" JNIEXPORT jstring JNICALL
Java_com_example_myapplication_MainActivity_stringFromJNI(
        JNIEnv* env,
        jobject /* this */) {
    std::string hello = "Hello from 123456 ";
    time_t now= time(nullptr);
    tm *ltm= localtime(&now);
    int year=1900+ltm->tm_year;
    int mon=ltm->tm_mon+1;
    int day=ltm->tm_mday;
    int hours=ltm->tm_hour;
    int min=ltm->tm_min;
    int sex=ltm->tm_sec;
    char* ss=new char [26];
    std::sprintf(ss, "%4d-%02d-%02d %02d:%02d:%02d",
                 year, mon,day,hours,min,sex);

    std::string  news(ss);
    hello+=news;
    hello += "-DingZhu";
    delete[] ss;
    return env->NewStringUTF(hello.c_str());
}

当然,这个只是调用的入口,在这里编写调用你实能的功能。


http://www.kler.cn/a/393267.html

相关文章:

  • WebSocket和HTTP协议的性能比较与选择
  • 使用 start-local 脚本在本地运行 Elasticsearch
  • 网页版五子棋——对战模块(服务器端开发②)
  • 同三维T610UDP-4K60 4K60 DP或HDMI或手机信号采集卡
  • 【Rust练习】21.动态数组 Vector
  • 开源 2 + 1 链动模式、AI 智能名片、S2B2C 商城小程序在用户留存与品牌发展中的应用研究
  • MATLAB和R及Python伪时间分析
  • 泷羽sec学习打卡-Linux基础2
  • Webpack 1.13.2 执行 shell 命令解决 打印时没有背景色和文字颜色的问题
  • 【云计算解决方案面试整理】3-7主流云计算平台、云计算架构、安全防护
  • ubuntu内核切换network unclaimed 网卡丢失
  • nginx配置负载均衡详解
  • 【聚类】Kmeans聚类方法概述及其MATLAB实现
  • 前端单元测试框架 引入说明
  • SpringBoot(四)配置拦截器、filter、跨域
  • Day41 | 动态规划 :完全背包应用 完全平方数单词拆分(类比爬楼梯)
  • 【Paper Note】跨音频-视觉匹配识别的3D CNN
  • Apache Doris 技术系列文章:高级特性与性能优化
  • SpringBoot(三)集成日志
  • Java线程的sleep和wait的区别
  • 力扣 LeetCode 349. 两个数组的交集(Day3:哈希表)
  • 一文理解吸收《红黑树》的精华
  • AI生成字幕模型whisper介绍与使用
  • 软件开发中的 Pull Request 工作流:逐步指南
  • springboot读取modbus数据
  • 《AI 使生活更美好》