一傲须、Android studio 3.5安裝詳解
1.安裝IDE
安裝前的準備:已安裝過的需要卸載甸鸟,并且刪除C:\user\yourname\ 下.android 惦费,gradle, .AndroidStudio 3個文件夾抢韭。
1.1 cmd命令窗口輸入ping dl.google.com薪贫,得到ip:203.208.40.39,把dl.google.com和dl-ssl.google.com都指向這個IP刻恭,具體:打開或新建C:\Windows\System32\drivers\etc 中的hosts文件后雷,在最后增加以下內(nèi)容:
203.208.40.39 dl-ssl.google.com
203.208.40.39 dl.google.com
修改好hosts文件之后,在cmd命令窗口輸入ipconfig /flushdns清除緩存DNS吠各。
1.2訪問安卓中文社區(qū)官網(wǎng)?https://www.androiddevtools.cn,下載android-studio-ide-191.5791312-windows.exe勉抓。安裝很簡單贾漏,直接一路點擊下一步即可。
1.3 運行藕筋,初次安裝會提示未安裝Android SDK:?點取消纵散,點No。
2. 安裝Android SDK
點擊菜單file->Settings,如下圖隐圾,在SDK Platforms中伍掀,選擇你想要的版本,點應用暇藏,接受蜜笤,安裝。
?
切換到SDK Tools盐碱,按下圖選擇把兔,點Ok沪伙,安裝。
?
二县好、HyperFT項目的環(huán)境搭建
1围橡、HyperFT項目下載
github地址:https://github.com/zeusees/HyperFT
gitee地址:https://gitee.com/huiwei13/HyperFT
通過git方式或者下載壓縮包的方式進行項目下載。
2缕贡、第三方庫下載
opencv:4.1.1
https://github.com/opencv/opencv/releases/download/4.1.1/opencv-4.1.1-android-sdk.zip
ncnn:20190611 bade132
https://github.com/Tencent/ncnn/releases/download/20190611/ncnn-android-lib.zip
三翁授、HyperFT項目編譯設置
1、啟動AS打開HyperFT的Prj-Android項目
?
2晾咪、項目報錯及解決方法
a收擦、項目路徑出現(xiàn)中文
打開項目之后報如下錯誤
?
錯誤原因:引用項目的路徑中包含中文
解決方法:
把現(xiàn)有的項目路徑修改至不包含中文。
b禀酱、報NDK錯誤
?
編譯提示"No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android"
網(wǎng)上也有解決辦法炬守,下載舊版的NDK,將其中的toolchain復制到新版的NDK中
但是感覺這種方式剂跟,不是解決的正道减途。
經(jīng)過對新版NDK的研究,發(fā)現(xiàn)NDK的更新記錄里有記載
This version of the NDK is incompatible with the Android Gradle plugin
version 3.0 or older. If you see an error like
`No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android`,
update your project file to [use plugin version 3.1 or newer]. You will also
need to upgrade to Android Studio 3.1 or newer.
也就是說新版本的NDK與3.0及以前舊版的Android Gradle plugin插件不兼容
解決方法:修改build.gradle中的紅字部分曹洽,改為3.1以上版本即可
dependencies {? ? classpath'com.android.tools.build:gradle:3.3.2'//NOTE:Do not place your application dependencies here; they belong// in the individual module build.gradle files}
3鳍置、修改CMakeLists.txt文件
cmake_minimum_required(VERSION3.1)project(FaceTracking-lib)set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} -std=c++11")set(CMAKE_C_FLAGS"${CMAKE_CXX_FLAGS} -fopenmp")set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS} -fopenmp")include_directories(F:/ncnn-android-lib/include)include_directories(F:/OpenCV-android-sdk/sdk/native/jni/include)include_directories(src/main/cpp/include)set(distribution_DIR${CMAKE_SOURCE_DIR}/../../../../src/main/jniLibs)find_library(# Sets the name of the path variable.log-lib# Specifies the name of the NDK library that# you want CMake to locate.log )set(DETECTION_FILES mtcnn.cpp)set(SOURCE_FILES tracking-lib.cpp)add_library(libncnn STATIC IMPORTED )set_target_properties(libncnn PROPERTIES IMPORTED_LOCATION F:/ncnn-android-lib/${ANDROID_ABI}/libncnn.a)add_library(Tracking-lib SHARED${DETECTION_FILES}${SOURCE_FILES})set(OpenCV_DIR"F:/OpenCV-android-sdk/sdk/native/jni")find_package(OpenCV REQUIRED)target_link_libraries(Tracking-lib libncnn${OpenCV_LIBS}z jnigraphics)
將以上代碼中的F:/ncnn-android-lib替換成ncnn-android-lib.zip下載解壓之后的路徑,F(xiàn):/OpenCV-android-sdk替換成opencv-4.1.1-android-sdk.zip下載解壓之后的路徑送淆,點擊Build->Refresh Linked C++ Project税产,無報錯即可。
?
4偷崩、修改LandmarkTracking.h文件
由于將opencv3替換成最新版的opencv4辟拷,源代碼LandmarkTracking.h有一下幾點需要修改。
a阐斜、在tracking_corrfilter函數(shù)中存在下圖三處地方需要修改
?
b衫冻、在update函數(shù)中也存在下圖三處地方需要修改
?
5、修改tracking-lib.h文件
a谒出、在Java_trackingsoft_tracking_FaceTracking_initTracking函數(shù)中也存在下圖一處地方需要修改
?
b隅俘、在Java_trackingsoft_tracking_FaceTracking_update函數(shù)中也存在下圖一處地方需要修改
?
6、編譯
完成以上所有操作之后笤喳,點擊Build->ReBuild Project 即可
?
編譯成功之后便會在Prj-Android\app\build\outputs\apk\debug的路徑中生成一個app-debug.apk
?
?
zeusee.com智云視圖