Affectiva affdex-sdk仅适用于Android SDK 22

时间:2018-05-28 16:27:28

标签: android affdex-sdk

我正在尝试Affectiva AI文档中引用的github示例。

请参阅:Affectiva Android example on github

示例有效,并附带以下项目gradle配置:

的build.gradle

apply plugin: 'com.android.application'

android {


    compileSdkVersion 22
    defaultConfig {
        minSdkVersion 21
        targetSdkVersion 22
        versionCode 1
        setProperty("archivesBaseName", "$project.name-$versionName")
        applicationId "com.affectiva.cameradetectordemo"
        versionName "3.2.0-01"
    }
    buildTypes {
        release {
            minifyEnabled true
        }
    }
    buildToolsVersion '27.0.3'
}

dependencies {
    implementation('com.affectiva.android:affdexsdk:3.+')
}

问题是,示例仅适用于 compileSdkVersion targetSdkVersion 都设置为22 。 当我输入更高的值,23到27,应用程序编译,但当我想从应用程序内部启动相机时,应用程序崩溃与错误消息

  

java.lang.IllegalStateException: Camera is unavailable.

问题:

  1. 为什么Affectiva示例仅适用于SDK版本22?
  2. 如何在当前版本的Android SDK中使用affdex-sdk?
  3. 感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

Android在API级别23中引入了运行时权限功能。针对23+的应用程序必须实现运行时权限逻辑并请求相机权限才能访问摄像头。

您引用的示例的目的是演示Affectiva SDK的使用,因此为了避免添加一堆与此目的无关的运行时权限逻辑,它将针对API级别22。