日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

基于Android studio3.6的JNI教程之helloworld思路詳解

瀏覽:111日期:2022-09-26 15:13:05

jdk環境變量配置:

path中增加下面2個路徑,也就是android studio的路徑,android有自帶的jdk。

E:AndroidAndroid StudiojrebinE:AndroidAndroid Studiobin

新建工程:

一定要選擇Native c++類型,最后要選c++11支持。

基于Android studio3.6的JNI教程之helloworld思路詳解

SDK設置:

File->Settings

基于Android studio3.6的JNI教程之helloworld思路詳解

File->Project Structure

基于Android studio3.6的JNI教程之helloworld思路詳解

首先確定工程的目錄結構,然后嘗試運行一下工程,使用模擬器,確保工程沒問題,

基于Android studio3.6的JNI教程之helloworld思路詳解

在MainActivity的同級目錄,新建一個hello.java,然后做一個簡單的實現,

package com.example.myapplication; public class hello { public native int add(int i, int j);}

使用android studio自帶的Terminal進入該hello.java所在目錄,執行,

javac hello.java

Terminal下回到app/src/main所在目錄,執行,

javah -d jni -classpath ./java com.example.myapplication.hello

此時,會在main目錄下面生成一個和cpp,java同級的目錄jni。

在該目錄結構里面新建hello.cpp。

將com_example_myapplication_hello.h中的內容復制進hello.cpp中,并且進行方法的實現,

#include <jni.h>/* Header for class com_example_myapplication_hello */ #ifndef _Included_com_example_myapplication_hello#define _Included_com_example_myapplication_hello#ifdef __cplusplusextern 'C' {#endif/* * Class: com_example_myapplication_hello * Method: add * Signature: (II)I */ #include 'com_example_myapplication_hello.h' JNIEXPORT jint JNICALL Java_com_example_myapplication_hello_add (JNIEnv *, jobject, jint i, jint j){return i+j;} #ifdef __cplusplus}#endif#endif

將com_example_myapplication_hello.h,hello.cpp這連個文件復制到cpp所在的目錄,

然后修改CMakeLists.txt,增加,

add_library( # Sets the name of the library. hello # Sets the library as a shared library. SHARED # Provides a relative path to your source file(s). hello.cpp )

修改target_link_libraries如下,

target_link_libraries( # Specifies the target library. native-lib hello # Links the target library to the log library # included in the NDK. ${log-lib} )

修改hello.java的調用方式,

package com.example.myapplication; public class hello { static { System.loadLibrary('hello'); } public native int add(int i, int j);}

修改MainActivity.java中的onCreate函數,

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Example of a call to a native method TextView tv = findViewById(R.id.sample_text); //tv.setText(stringFromJNI()); tv.setText('hello 9+10= ' + new hello().add(9, 10)); }

然后,rebuild project,沒有錯誤后,然后run app。

最終程序整體目錄結構,以及運行效果,

基于Android studio3.6的JNI教程之helloworld思路詳解

JNI的整體流程思路:

Java先定義一個類,類中定義一個需要c++來實現的方法.通過javah生成需要c++實現的.h的c++頭文件實現.h的c++頭文件中定義的方法Cmake編譯運行

總結

到此這篇關于基于Android studio3.6的JNI教程之helloworld思路詳解的文章就介紹到這了,更多相關android studio JNI helloworld內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Android
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
中文字幕av一区二区三区四区| 久久伊人久久| 精品亚洲美女网站| 亚洲天堂资源| www在线观看黄色| 中文字幕人成乱码在线观看 | 青青青免费在线视频| 丁香婷婷久久| 91tv亚洲精品香蕉国产一区| 三级精品视频| 国产一区亚洲| 亚洲欧美日韩专区| 日本成人在线一区| 久久av免费| 91看片一区| 99香蕉国产精品偷在线观看 | 国产精品黄色片| 久久精品国产99国产精品| 久久超碰99| 色婷婷综合网| 91精品精品| 六月天综合网| 日本欧美一区| 久久三级中文| 性欧美xxxx免费岛国不卡电影| 在线看片不卡| 日本v片在线高清不卡在线观看| 国产视频一区二| 捆绑调教日本一区二区三区| 久久网站免费观看| 亚洲欧美在线综合| 老鸭窝一区二区久久精品| 日韩国产激情| 亚洲欧美一区在线| 男人的天堂久久精品| 国产日韩欧美三区| 麻豆一区二区99久久久久| 国产精品久久国产愉拍| 国产欧美另类| 成人免费一区| 五月天久久777| 亚洲在线久久| 久久99影视| 久久精品影视| 日韩综合一区二区| 美女久久99| 激情综合网五月| 清纯唯美亚洲综合一区| 国产成人精品福利| 国产一区91| 你懂的亚洲视频| 欧美色图一区| 97久久中文字幕| 久久国产免费| 日本不卡视频在线| 日韩免费在线| 影音先锋久久精品| 中文字幕在线免费观看视频| 日本大胆欧美人术艺术动态| 欧美色综合网| 精品在线播放| 麻豆国产精品| 亚洲一区日韩| 国产极品模特精品一二| 成人av动漫在线观看| 国产欧美另类| 影音先锋久久| 国产成人精品亚洲线观看| 亚洲丝袜美腿一区| 欧美二三四区| 国产精品一级在线观看| 国产视频欧美| 国内不卡的一区二区三区中文字幕| 久久亚洲一区| 久久久久91| 国产精品115| 欧美中文日韩| 99热精品久久| 国产精品久一| 人人爽香蕉精品| 日韩中文在线电影| 久久狠狠久久| 黄色欧美日韩| 欧美日韩视频免费观看| 国产免费久久| 亚洲精品日本| 不卡一区综合视频| 久久久久久网| 国产精品99精品一区二区三区∴ | 国产精品久久久网站| 婷婷综合社区| 欧美日韩国产v| 国产精品免费不| 综合国产视频| 欧美亚洲国产一区| 国产精品蜜芽在线观看| 日韩av黄色在线| 在线精品一区| 亚洲国产不卡| 欧美成人a交片免费看| 国产日韩1区| 亚洲久久视频| 美日韩精品视频| 日韩国产在线| 国产一区二区三区网| 国产日韩视频| 欧美一区在线观看视频| 欧美综合国产| 国产精品色网| 欧美日韩日本国产亚洲在线| 亚洲v在线看| 日韩欧美自拍| 精品国产亚洲一区二区三区大结局| 日本午夜精品| 日产欧产美韩系列久久99| 亚洲乱亚洲高清| 先锋影音国产一区| 国产精品女主播一区二区三区 | 久久一区欧美| 国产精品欧美日韩一区| 国产一卡不卡| 国产精品亚洲综合在线观看| 日韩福利视频导航| 日韩黄色av| 青草av.久久免费一区| 日本强好片久久久久久aaa| 亚州av日韩av| 婷婷综合电影| 亚洲毛片视频| 欧美黄色一区二区| 国产精品2023| 欧美极品一区二区三区| 久久99蜜桃| 欧美韩一区二区| 国产精品天堂蜜av在线播放| 久久国际精品| 久久久久黄色| 成人高清一区| 久久精品动漫| 黄色日韩在线| 亚洲免费一区三区| 日本一区二区三区中文字幕| 日本v片在线高清不卡在线观看| 欧美精品影院| 精品免费在线| 91精品国产91久久久久久黑人| 999国产精品永久免费视频app| 日韩久久精品| 色爱av综合网| 99国产精品私拍| 亚洲精品成人一区| 国产精品自拍区| 麻豆一区在线| 久久精品123| 日韩在线一区二区| 日韩成人av影视| 精品国产乱码久久久久久1区2匹| 欧美日韩国产v| 亚洲一区不卡| 久久精品99国产精品日本| 精品午夜久久| 欧美日韩一二| 三级欧美在线一区| 国产精品久久久久久模特| 97精品国产| 午夜视频精品| 日韩精品福利一区二区三区| 嫩草伊人久久精品少妇av杨幂| 国产日韩1区| 日韩中文首页| 天堂av在线一区| 欧美日本久久| 久久天堂av| 天堂成人免费av电影一区| 国产欧美一级| 亚洲成人va| 日本不卡视频在线观看| 国产精品高潮呻吟久久久久| 欧美成人a交片免费看| 欧美专区一区二区三区| 国产麻豆精品| 成人福利av| 视频一区二区三区中文字幕| 国产精品观看| 亚洲激情五月| 久久精品99国产精品日本| 免费污视频在线一区| 少妇精品在线| 国产成人精品一区二区三区免费| 亚洲激情欧美| 国产日本精品| 伊人久久av| 亚洲欧美日韩国产一区| 国产黄色精品| 视频一区中文字幕| 中文在线免费视频| 国产日韩欧美一区| 免费视频国产一区| 国产精品网址| 国产精品女主播一区二区三区|