Android Studio、Fire TV - 使用 Amazon SDK 编译时出现问题

Lef*_*ain 5 android android-studio android-gradle-plugin amazon-fire-tv

我对 Android 开发还很陌生,距离我的第一个项目大约还有 2 周时间。因此,解决方案可能是显而易见的,我只能希望这最终能帮助另一个站在我的立场上的人。

目标是为 FireTV 构建一个可以流媒体(点播或实时视频流)的应用程序。

我开始在亚马逊的开发者门户上进行研究,下载了 AS、亚马逊 SDK,以及我被告知需要继续的任何其他内容。我的第一个想法是熟悉 Lollipop,使用 Google TV 作为模拟器,并使用 TV Activity 模板,据我所知,该模板很大程度上基于 Leanback 库。我根据自己的喜好构建、测试和修改,并使用可以处理 api21 的模拟器制作了一个可以运行的应用程序。然后是时候“改造”我使用 Amazon Fire TV sdk 插件 (API 17) 所使用的内容了。在此过程中了解了一些有关 AppCompat 和其他一些错误的知识,其中大多数错误是我可以自己解决的。但现在,我被困住了。

由于我正在使用 FireTV 插件,Gradle 无法编译,并且在这个级别控制台输出对我没有帮助。

出了什么问题:任务':app:processDebugResources'执行失败。

com.android.ide.common.internal.LoggedErrorException:无法运行命令:C:\path\to\sdk\build-tools\21.1.2\aapt.exe package -f --no-crunch -IC:\path \to\sdk\platforms\android-17\android.jar -MC:\path\to\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -IC:\path\to\sdk\add-ons \addon-amazon_fire_tv_addon-amazon-17\libs\notification.jar -IC:\path\to\sdk\add-ons\addon-amazon_fire_tv_addon-amazon-17\libs\gamecontroller.jar -SC:\path\to\app \build\intermediates\res\debug -AC:\path\to\app\build\intermediates\assets\debug -m -JC:\path\to\app\build\ generated\source\r\debug -FC:\路径\to\app\build\intermediates\res\resources-debug.ap_ --debug-mode --custom-package com.d53e.rbeal.fntsysportsnetwork -0 apk --output-text-symbols C:\path\to \app\build\intermediates\symbols\debug 错误代码:1 输出:错误:资产包不包括 'C:\path\to\sdk\add-ons\addon-amazon_fire_tv_addon-amazon-17\libs\notification.jar'成立。* 尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。* "

被困在这里两天了,时间紧迫,急需进展。无法弄清楚如何按照建议包含 --stacktrace 或 --info 。

惊慌失措中,我尝试将项目移植到 Eclipse,最终结果遇到了“无法解决‘R’”错误,我能找到的唯一修复方法是更改​​构建目标,但我认为我需要使用 Amazon 的。

我宁愿使用 Android Studio,但此时任何帮助将不胜感激。

构建.gradle

    apply plugin: 'com.android.application'

android {
//    compileSdkVersion 21
    compileSdkVersion "Amazon.com:Amazon Fire TV SDK Addon:17"
    buildToolsVersion "21.1.2"
    defaultConfig {
        applicationId "com.d53e.myname.appname"
        minSdkVersion 17
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.android.support:recyclerview-v7:21.0.3'
    compile 'com.android.support:leanback-v17:21.0.2'
    compile 'com.squareup.picasso:picasso:2.3.2'
    compile 'com.android.support:support-v4:21.0.3'
    compile 'com.amazon.device.tools.build:gradle:1.0.0'
}
Run Code Online (Sandbox Code Playgroud)

(项目)构建.gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.amazon.device.tools.build:gradle:1.0.0'
        //classpath 'com.android.tools.build:gradle:1.0.0'

    }
}

allprojects {
    repositories {
        jcenter()
    }
}
Run Code Online (Sandbox Code Playgroud)

Lef*_*ain 1

有那么一瞬间,我真想把头撞到墙上……

手动将文件复制到“projectName/app/libs”文件夹中,将项目资源管理器视图更改为项目,这样您就可以看到 libs 文件夹右键单击其中的项目,然后选择“添加为库”

很像 eclipse 中的最后一步。