参考大佬的文章:
https://blog.csdn.net/gong0585/article/details/123292622
我本来是借助Android Studio 安装 Android sdk 和 ndk,奈何是小白一个,运行官方的例子出现Android的ADT与sdk不匹配,我没解决这个问题,我将之前设置的环境变量删除,不用Android studio,采用官方的方法来了一变。
1.安装jdk 和Android sdk 、ndk
cd mediapipe
sudo apt install curl openjdk-11-jdk g++ unzip zip
安装Android 的sdk和ndk 官方有方法
在执行完第二条命令之后,我们不需要向mediapipe的WORKSPACE添加东西,因为这条命令自动为我们添加了,我们只需要再手动添加环境变量即可。
添加环境变量
vim ~/.bashrc
bashrc就是环境变量文件
输入vim ~/.bashrc 命令后进入文件,然后输入 i
下方出现了INSERT插入的字样,便可以编辑
编辑完,点击Esc,然后输入:wq便可以退出
2修改WORKSPACE文件,使用国内的镜像网站
修改maven的下载仓库,repositories 替换下面的内容,google自己带的国内没法用:
repositories = [
"https://maven.google.com",
"https://dl.google.com/dl/android/maven2",
"https://repo1.maven.org/maven2",
"https://jcenter.bintray.com",
],
替换为
repositories =
[
"https://maven.aliyun.com/repository/google",
"https://maven.aliyun.com/repository/central",
"https://maven.aliyun.com/repository/public",
],
在gradle中加入aliyun
#vi /home/mediapipe/mediapipe/examples/android/solutions/build.gradle
allprojects {
repositories {
maven { url ‘https://maven.aliyun.com/repository/google’ }
maven { url ‘https://maven.aliyun.com/repository/central’ }
maven { url ‘http://maven.aliyun.com/repository/public’ }
}
}
使用Opencv-3.4.3镜像地址sourceforge,github的地址太慢。
http_archive(
name = "android_opencv",
build_file = "@//third_party:opencv_android.BUILD",
strip_prefix = "OpenCV-android-sdk",
type = "zip",
url = “https://github.com/opencv/opencv/releases/download/3.4.3/opencv-3.4.3-android-sdk.zip”,
url=“https://udomain.dl.sourceforge.net/project/opencvlibrary/opencv-android/3.4.3/opencv-3.4.3-android-sdk.zip”,
)
3.编译与打包文件到手机上
第二步我这边USB调试一直有问题,所以我直接把文件传给了手机上。
bazel build -c opt --config=android_arm64 $APPLICATION_PATH:helloworld 这步是利用bazel编译
** $APPLICATION_PATH**需要写成自己的位置
我参考了另一个博主的文章 https://blog.csdn.net/luozhichengaichenlei/article/details/117263485
最终的命令为:
bazel build -c opt --config=android_arm64 mediapipe/examples/android/src/java/com/google/mediapipe/apps/basic:helloworld