在Android Studio 上运行EasyAR

最近项目中有需要用到AR功能,于是找到了EasyAR。在Android Studio上跑EasyAR样例的时候踩了不少坑。

EasyAR官方推荐安装需求:
JDK 1.7 或更新版本
Android Studio 1.5 或更新版本
Android NDK r10e
Android SDK with Build Tools 至少需要版本20.0.0
Android API 23 (可从Android SDK Manager中下载)

如果您的是Android Studio也是 1.5版本的,就可以直接看官方的文档

1.当然是先注册帐号什么的了

EasyAR官方网站上注册帐号,并且创建一个应用,因为要运行官方的样例所以在Package Name框中直接输入cn.easyar.samples.helloar,名称随意。
创建应用

2.下载Samples

下载EasyAR SDK v1.3.1 Native Samples ,然后直接解压。
Samples
打开MainActivity设置key。
这里写图片描述
注意:“Android” 文件夹和“package”要在一个文件夹中

3.将样例导入Android Studio里面

选择HelloARNative项目导入项目。
HelloARNative

4.配置NDK

如果没有NDK则会出现下面的提示,如果没有请跳过该步骤。
NDK提示
点击错误提示会出现以下窗口。你可以选择第一选项直接下载,不过可能会比较慢,而且NDK包大概有2G。选择第二个选项,点击“…”按钮选择你的NDK包。
这里写图片描述
这里写图片描述

5.解决Error:Gradle DSL method not found: ‘library()’

打开app下的build.gradle文件修改如下:
这里写图片描述

apply plugin: 'com.android.model.application'

model {
    android {
        compileSdkVersion = 23
        buildToolsVersion = "25.0.0"

        defaultConfig.with {
            applicationId = "cn.easyar.samples.helloar"
            minSdkVersion.apiLevel  =15
            targetSdkVersion.apiLevel = 22
            versionCode = 1
            versionName = "1.0"
        }
    }
    android.buildTypes {
        release {
            minifyEnabled = false
            proguardFiles.add(file("proguard-rules.pro"))
        }
    }
    android.ndk {
        moduleName = "HelloARNative"
        cppFlags.add("-I${file("../../../package/include")}".toString())
        cppFlags.add("-DANDROID")
        cppFlags.add("-fexceptions")
        cppFlags.add("-frtti")
        stl = "gnustl_static"
        ldLibs.add("log")
        ldLibs.add("GLESv2")
    }
    android.productFlavors {
        create("arm") {
            ndk.with {
                abiFilters.add("armeabi-v7a")
            }
        }
    }

    repositories {
        libs(PrebuiltLibraries) {
            prebuilt {
                headers.srcDir "../../../package/include"
                binaries.withType(SharedLibraryBinary) {
                    sharedLibraryFile = file("../../../package/Android/libs/armeabi-v7a/libEasyAR.so")
                }
            }
        }
    }
    android.sources {
        main {
            jni {
                dependencies {
                    library "prebuilt"
//                    library file("../../../package/Android/libs/armeabi-v7a/libEasyAR.so") abi "armeabi-v7a"
                }
            }
        }
    }
}

dependencies {
//    compile fileTree(include: ['*.jar'], dir: '../../../package/Android/libs')
//    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:20.0.0'
    compile files('libs/EasyAR.jar')
}

注意:创建libs文件,将EasyAR.jar复制到文件夹中

6.重新Build –> clean project

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少华年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值