从AOSP树构建Android 6消息应用程序

从AOSP树构建Android 6消息应用程序,android,gradle,android-source,Android,Gradle,Android Source,我正在尝试为Android 6构建消息传递应用。。。。 我已将软件包/应用程序/消息导入Android Studio。。。 并创建了以下build.gradle文件: buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:1.3.+' } } apply plugin: 'com.a

我正在尝试为Android 6构建消息传递应用。。。。 我已将软件包/应用程序/消息导入Android Studio。。。 并创建了以下build.gradle文件:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
       classpath 'com.android.tools.build:gradle:1.3.+'
    }
}

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }

    defaultConfig {
        applicationId "com.android.messaging"
        minSdkVersion 23
        targetSdkVersion 23

        ndk {
            moduleName "libgiftranscode"
        }

        repositories {
            mavenCentral()
        }

        testApplicationId "com.android.messaging.test"
        testInstrumentationRunner "android.test.InstrumentationTestRunner"
    }

    dependencies {
        compile "com.android.support:support-v4:+"
        compile "com.android.support:appcompat-v7:+"
        compile "com.android.support:recyclerview-v7:+"
        compile "com.android.support:palette-v7:+"
        compile "com.android.support:support-v13:+"
        compile group: 'com.google.guava', name: 'guava', version: '18.0'
        compile group: 'com.google.code.findbugs', name: 'jsr305', version: '3.0.0'
        compile group: 'com.googlecode.libphonenumber', name: 'libphonenumber', version: '3.5'
        compile group: 'com.klinkerapps', name: 'android-chips', version: '1.0.2'
        // https://mvnrepository.com/artifact/com.google.collections/google-collections
        compile group: 'com.google.collections', name: 'google-collections', version: '1.0'
        // https://mvnrepository.com/artifact/com.1gravity/android-colorpicker
        compile group: 'com.1gravity', name: 'android-colorpicker', version: '2.0.1'
        // https://mvnrepository.com/artifact/com.googlecode.ez-vcard/ez-vcard
        compile group: 'com.googlecode.ez-vcard', name: 'ez-vcard', version: '0.4.1'
        // https://mvnrepository.com/artifact/javax.annotation/jsr250-api
        compile group: 'javax.annotation', name: 'jsr250-api', version: '1.0'
        // https://mvnrepository.com/artifact/com.google.guava/guava-annotations
        compile group: 'com.google.guava', name: 'guava-annotations', version: 'r03'






    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}
buildscript{
存储库{
mavenCentral()
}
依赖关系{
classpath'com.android.tools.build:gradle:1.3.+'
}
}
应用插件:“com.android.application”
安卓{
编译DK23版
buildToolsVersion“23.0.2”
源集{
主要{
manifest.src文件“AndroidManifest.xml”
java.srcDirs=['src']
resources.srcDirs=['src']
aidl.srcDirs=['src']
renderscript.srcDirs=['src']
res.srcDirs=['res']
assets.srcDirs=['assets']
}
//将测试移动到tests/java、tests/res等。。。
instrumentTest.setRoot('tests'))
//将生成类型移动到生成类型/
//例如,build-types/debug/java、build-types/debug/AndroidManifest.xml。。。
//这会将它们移出src/…下的默认位置,这将
//与主源集正在使用的src/冲突。
//应同时添加新的构建类型或产品风格
//通过类似的定制。
setRoot('build-types/debug')
setRoot('build-types/release')
}
默认配置{
applicationId“com.android.messaging”
明斯克版本23
targetSdkVersion 23
ndk{
moduleName“libgif转码”
}
存储库{
mavenCentral()
}
testApplicationId“com.android.messaging.test”
TestInstrumentRunner“android.test.InstrumentationTestRunner”
}
依赖关系{
编译“com.android.support:support-v4:+”
编译“com.android.support:appcompat-v7:+”
编译“com.android.support:recyclerview-v7:+”
编译“com.android.support:palete-v7:+”
编译“com.android.support:support-v13:+”
编译组:“com.google.guava”,名称:“guava”,版本:“18.0”
编译组:“com.google.code.findbugs”,名称:“jsr305”,版本:“3.0.0”
编译组:“com.googlecode.libphonenumber”,名称:“libphonenumber”,版本:“3.5”
编译组:“com.klinkerapps”,名称:“android芯片”,版本:“1.0.2”
// https://mvnrepository.com/artifact/com.google.collections/google-collections
编译组:“com.google.collections”,名称:“googlecollections”,版本:“1.0”
// https://mvnrepository.com/artifact/com.1gravity/android-colorpicker
编译组:“com.1gravity”,名称:“android colorpicker”,版本:“2.0.1”
// https://mvnrepository.com/artifact/com.googlecode.ez-vcard/ez-vcard
编译组:“com.googlecode.ez vcard”,名称:“ez vcard”,版本:“0.4.1”
// https://mvnrepository.com/artifact/javax.annotation/jsr250-api
编译组:“javax.annotation”,名称:“jsr250 api”,版本:“1.0”
// https://mvnrepository.com/artifact/com.google.guava/guava-annotations
编译组:'com.google.guava',名称:'guava annotations',版本:'r03'
}
建筑类型{
释放{
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard rules.txt'
}
}
}
基本上还可以,但最后我得到:

“启动进程”命令 “/home/vadim/Android/Sdk/build tools/23.0.2/aapt”。工作目录: /home/vadim/work/Messaging2命令: /home/vadim/Android/Sdk/build tools/23.0.2/aapt-package-f——没有紧缩 -I/home/vadim/Android/Sdk/platforms/Android-23/Android.jar-M/home/vadim/work/Messaging2/build/intermediates/manifests/full/debug/AndroidManifest.xml -S/home/vadim/work/Messaging2/build/intermediates/res/merged/debug-A/home/vadim/work/Messaging2/build/intermediates/assets/debug-m-J /home/vadim/work/Messaging2/build/generated/source/r/debug-F /home/vadim/work/Messaging2/build/intermediates/res/resources-debug.ap_ --调试模式——定制包com.android.messaging-0apk——输出文本符号/home/vadim/work/Messaging2/build/intermediates/symbols/debug 已成功启动进程“”命令 “/home/vadim/Android/Sdk/build tools/23.0.2/aapt” /home/vadim/work/Messaging2/res/values/styles.xml:2:检索时出错 项的父项:未找到与给定名称匹配的资源 “PhotoViewTheme.半透明”

:processDebugResources失败:processDebugResources (线程[main,5,main])已完成。花了1.175秒

失败:生成失败,出现异常

  • 错误:任务“:processDebugResources”的执行失败

    com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:process'命令 “/home/vadim/Android/Sdk/build tools/23.0.2/aapt”已完成 非零出口值1

  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--debug选项运行以获得更多日志输出

缺少的样式“PhotoViewTheme.半透明”似乎位于appcompat库中,但我的构建找不到它。。。 有没有办法解决这个问题


谢谢

很抱歉让您失望,但您无法从源代码导入特定文件,并将其作为常规apk在Gradle中构建。
系统应用程序是使用GNU make在linux环境中构建的,而不是使用常规APK Gradle。
要编译一个系统应用程序,您需要首先构建整个应用程序。(如果是第一次,大约需要一周时间)
我会在线搜索应用程序(或类似应用程序)之外的Gradle版本

您的输出说明了错误:

/home/vadim/work/Messaging2/res/values/styles.xml:2 : Error retrieving parent for item: No resource found that matches the given name 'PhotoViewTheme.Translucent'
这仅仅意味着该应用程序缺少作为另一个应用程序父级的特定样式

查看消息应用程序源中的Android.mk文件。它清楚地提到

LOCAL_RESOURCE_DIR += frameworks/opt/photoviewer/res
这意味着你需要