日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NDK环境配置

發布時間:2023/12/10 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NDK环境配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Android Studio 配置

(不是SDK,麻煩各位看官看清楚)

  • 手動配置

    • 步驟一:下載sdk 下載方式有兩種

      • 一官方下載(請***)

        • https://developer.android.com/ndk/index.html

      • 二在studio中下載(如下載慢”拿梯子FQ”)

        選擇NDK和LLDB 2.2 (調試工具,不下載也可開發 只是很難受,連源碼都關聯不了)

    • 步驟二:設置NDK的環境變量
      假設你下載的NDK路徑如下F:\android-ndk-r12b
      如下
      那么我們

      • 如圖
      • 下一步
      • 繼續 選擇環境變量
      • 彈出的的菜單中
    • 最后 粘貼路徑(記得加冒號)確定后返回上一個界面繼續點擊確定應用即可

  • 步驟三:在工程目錄src/main/jni新建c文件Android.mk 和 Application.mk

    • Android.mk:建立目標編譯生成的類庫名
    LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS)LOCAL_MODULE := hello # 生成的靜態鏈接庫或動態鏈接庫的名字, linux 下生成 libhello.so LOCAL_SRC_FILES := hello-jni.c # 所有的源文件,空格隔開include $(BUILD_SHARED_LIBRARY) # 生成動態鏈接庫
    • Application.mk
    APP_ABI := all # 生成所有CPU架構下的庫,如果沒有 Application.mk 默認只會生成 arm 架構下的庫
    • hello-jni.c (javah 命令獲取頭–要在某個類包文件根目錄前打開命令控制輸入ndk-build)
      我們先看看源碼:
    package com.example.administrator.myapplication;import android.provider.Settings; import android.support.v7.app.AppCompatActivity; import android.os.Bundle;public class MainActivity extends AppCompatActivity {static {System.loadLibrary("hello");}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}public native int stringFromJNI(); }
    • 如 某個類的包:com.example.administrator.myapplication
      那么我們要在com父目錄下按下shift建 右鍵 在跳出選項窗口選擇

    • 在控制輸入ndk-build包目錄+類如com.example.administrator.myapplication.MainActivity

    • 之后會在包根目錄的上級目錄生成 包二級包三級包_類名.h文件

最后將得到頭文件寫入C文件的函數 #include <jni.h>jstring Java_com_example_lesliefang_myapplication_MainActivity_stringFromJNI(JNIEnv *env,jobject thiz) {return (*env)->NewStringUTF(env, "Hello from JNI ! ");} 目錄結果圖

  • 步驟四:build.gradle 中添加如下配置
android {sourceSets{main{jni.srcDirs = [] // 阻止 gradle 自己生成 Android.mk 文件,因為我們自己寫了jniLibs.srcDir 'src/main/libs' // 打包時從這里拿 .so 文件}} }

  • 切換到 src/main/jni 目錄下執行 ndk-build 就在 libs 下生成了各個平臺的庫文件

最后運行即可 (注意自己生成的so庫和手機處理器要對應 X86 x64 ,arm,mips)


  • 自動配置(讓studio自己編譯so類庫)
    需要下載了studio 的LLDB上面下載的時候提過

    • 步驟一 在project Structure中配置SDK目錄

    • 這跟直接在 local.properties 寫是一樣的

    ndk.dir=/Users/lesliefang/leslie/android/android-ndk-r10e sdk.dir=/Users/lesliefang/leslie/android/android-sdk-macosx
    • 步驟二:build.gradle 中添加一個配置

現在目錄結構是這樣的, Android.mk 和 Application.mk 都不要了直接在jni寫C代碼(頭名字獲取上描述一致)

  • 不過這里可能運行時可能會出現錯誤
  • 如下


    • 解決方法:
      gradle.properties文件末尾寫上android.useDeprecatedNdk=true


Elipse配置DNK

  • 手動配置

    • 跟Studio比較 少了一步驟四 步驟四:build.gradle 配置
  • 自動配置

    • 步驟一: 配置NDK路徑 在Window的preference中Android-ndk
    • 步驟二:在某個安卓項目右鍵Android Tools 在選擇Add Android Native support 然后輸入要生成的類庫名

完成后自動在創建jni文件夾并創建一個 類庫名.cpp 和一個Android.mk
當然你想自己控制生成某個處理器C語言 那么再建立一個Application.mk 不寫只生產arm (studio默認全部生成三種)

  • 步驟三 添加jni.h頭文件

在跳出的菜單中選擇C/C++general選擇path and Symbols 在右側選擇add 選擇 SDK目錄下的platforms/android-xx/arch-arm(你自己選擇)/include

轉載于:https://www.cnblogs.com/muyuge/p/6152228.html

總結

以上是生活随笔為你收集整理的NDK环境配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线观看1区 | av番号网| 国产一级二级三级在线观看 | av无码精品一区二区三区宅噜噜 | 日本视频网 | 一区二区三区免费看 | 波多野结衣一区二区三区高清av | 综合色小说| 少妇精品一区 | 男女拍拍拍网站 | 18pao国产成视频永久免费 | 国产丝袜视频在线观看 | av片在线观看网站 | 欧美乱强伦 | 玩日本老头很兴奋xxxx | 精品一区二区三区视频 | 久久六六 | 大桥未久中文字幕 | 韩国精品一区 | 欧洲一区二区三区在线 | 亚洲av首页在线 | 日本少妇一区二区三区 | 国产精品999| www国产亚洲精品 | 亚洲伦理天堂 | 亚洲无码精品在线观看 | 大胸美女无遮挡 | 齐天大性床战铁扇公主 | 久久久久18 | 91视色 | 97超碰人 | 国产精品久久久久久久久久直播 | 欧美国产在线视频 | 影音先锋在线中文字幕 | 丰满岳跪趴高撅肥臀尤物在线观看 | 天天艹日日干 | 性大片潘金莲裸体 | 日本一本一道 | 欧美性做爰大片免费 | 欧美三级色图 | 91a视频| 国产伦精品一区二区三区免费 | xxxxx69| 98堂 最新网名 | 日本打屁股网站 | 懂色av成人一区二区三区 | 午夜一区二区三区 | 日韩 欧美 亚洲 | 美女脱了内裤喂我喝尿视频 | 中文字幕精品一区二 | 国产成人无码精品久久久久 | 91秘密入口 | 992tv成人免费视频 | 性欧美free | 欧美福利专区 | 欧美日韩在线高清 | 亚洲永久精品视频 | 国产黄色三级 | 中国a一片一级一片 | 干干操操 | 片集网 | 青青草伊人久久 | 在线观看黄色片网站 | 国产一区二区三区91 | 69天堂| 亚洲乱熟女一区二区 | 午夜视频在线观看免费视频 | 黑人巨大精品欧美黑寡妇 | 亚洲经典一区二区三区四区 | 性农村xxxxx小树林 | 美女又爽又黄免费 | 国产精久久久久 | 国产视频一区二区三区在线播放 | 91网站大全| 女生脱裤子让男生捅 | 日韩城人免费 | 打开免费观看视频在线 | 老司机一区二区三区 | 欧美久久成人 | 精品一区二区三区免费视频 | 黄在线视频 | 看黄色的网址 | 日本精品三级 | 日韩视频一区 | 亚洲天堂久久 | 丰满女人又爽又紧又丰满 | 先锋影音av资源在线观看 | 永久免费汤不热视频 | 国产在线视频在线观看 | 人妻在线一区 | 日韩一区电影 | xxxxx毛片 | 女儿的朋友在线播放 | 3p视频在线观看 | 亚洲国产不卡 | 美女av一区二区 | 黄色片网站免费观看 | 野花社区视频在线观看 | 日本理论片中文字幕 |