Articles of android build

使用CSV / TXT文件中的名称列表(带属性)动态生成productFlavors和sourceSets

这个问题继续我的另一个问题 ,我想进一步改进。 我能够使用以下代码在sourceSets下对sourceSets (具有通用配置)进行sourceSets : (从上面链接问题的天才那里得到它) import com.android.build.gradle.api.AndroidSourceSet android { sourceSets { [flavor2, flavor4].each { AndroidSourceSet ss -> ss.assets.srcDirs = [‘repo-assets/flavor2’] ss.res.srcDirs = [‘repo-res/flavor2’] } } } 现在,我想知道列表[flavor2, flavor4]是否可以从以下任何一个中提取: 一个XML文件,我可以通过它迭代以获得所有的味道(我将放在那里) 一个CSV文件,我可以通过它迭代并获取值。 一个自定义类,我可以在一个单独的文件中编写,并从类中的静态成员中获取数据。 除了味道名称,我打算将以下内容存储在外部源(上面的一个): 应用程序ID(我将拉到productFlavors ) 广告单元ID(每种风格两个) 一些其他自定义值,如类别等。 PORPOSE:我想编写一个通用的代码片段来迭代并动态创建productFlavors和sourceSets 。 我将sourceSets概括为近90%,现在一个块已经足够了所有口味。 它现在看起来像这样: sourceSets { [flavor1, flavor2, flavor3 …].each { AndroidSourceSet ss -> ss.assets.srcDirs = [‘repo-assets/’ + […]

Android NDK集成:错误:无法加载类BuildType $ Impl

我正在尝试将NDK集成到我的项目中。 我正在使用Gradle包装器2.9和classpath: gradle-experimental:0.6.0-alpha3 。 项目级别: buildscript { repositories { jcenter() } dependencies { classpath ‘com.android.tools.build:gradle-experimental:0.6.0-alpha6’ } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } 应用级别gradle: apply plugin: ‘com.android.model.application’ model { android { compileSdkVersion = 23 buildToolsVersion = “23.0.2” defaultConfig.with { applicationId = “com.ms.knowursensor.android” minSdkVersion.apiLevel = 11 targetSdkVersion.apiLevel = […]

生成签名的apk。 错误:(7)build / generated / res / generated / release / values / generated.xml中的

问题很奇怪。 我正在尝试直接在build.gradle添加一个String,因为我需要它来使用Tray库( https://github.com/grandcentrix/tray )。 在我的第一个项目中一切都很好。 在第二个项目中,它有点复杂。 我正在使用gradle:1.2.3并且在导出已签名的apk时出现MissingTranslation错误。 的build.gradle applicationId “some.app.id” resValue “string”, “tray__authority”, “${applicationId}.tray” 构建错误 …/build/generated/res/generated/release/values/generated.xml Error:(7) Error: “tray__authority” is not translated in “pl” (Polish) [MissingTranslation] some.app.id.tray generated.xml some.app.id.tray 有几个类似的问题,但所有这些问题都与strings.xml有关,并建议使用 或者只是translatable=”false” 我不能这样做,因为文件是自动生成的。 如何强制gradle忽略错误? 我尝试更改检查设置并将其设为警告,但gradle忽略了我的设置。 我知道这是一个错误( https://code.google.com/p/android/issues/detail?id=152198 ),但我不知道如何解决它。 我发现的所有答案都不起作用。

如何计算在Android项目中作为依赖项添加的库的大小

我正在一个项目中工作,我正在使用多个图书馆,如谷歌播放服务,翻新,gson,滑翔,推特和Facebook sdk。 所以我想知道每个库的确切大小在我的应用程序中占用。 请帮助我,是否有任何可能的方法来分析Android工作室的大小。 任何针对我的要求的工具建议或提示对我都非常有帮助。 我发布了我在build.gradle使用的依赖build.gradle ,如下所示。 compile(‘com.twitter.sdk.android:twitter:1.9.0@aar’) { transitive = true; } compile ‘com.android.support:appcompat-v7:23.2.1’ compile ‘org.twitter4j:twitter4j-core:4.0.2’ compile ‘com.github.bumptech.glide:glide:3.6.1’ compile ‘com.google.android.gms:play-services-gcm:8.4.0’ compile ‘com.android.support:support-v4:23.2.0’ 注意 :我正在分析此报告,以通过删除占用大量内存的库来减少应用程序的apk大小。 在过去的几天里,我完全坚持使用这个解决方案。 我甚至搜索了很多,我找不到优化的方法来计算我项目中库的确切大小用法。 请帮忙。 提前致谢。

Android控制台错误:“要求.class兼容性设置为5.0。 请修复项目属性“

刚刚安装了Eclipse 3.5和Android平台(SDK和ADT)。 我已经在不同的机器上做了几次,所以我很确定我已经正确配置了所有内容。 尝试导入Android项目并在控制台窗口中收到以下错误: “Android要求.class兼容性设置为5.0。请修复项目属性。” 我以前从未见过这个错误。 我唯一能想到的是它谈论构建目标? 我已将项目构建目标设置为1.6(API级别4),这是我想要的。 看起来很傻,他们会要求我改为更高的API级别…… 其他人之前看到此错误?

仅使用Jenkins构建的Android ZBarexception

我有一个带有QR扫描活动的android项目。 我使用ZBar库: http : //sourceforge.net/projects/zbar/files/AndroidSDK/ 如果项目是在带有exlipse的PC或Mac上构建的,那么该应用程序可以正常工作。 如果它是由jenkins构建的(来自git的相同来源)应用程序崩溃。 我得到的例外是: at controller.gui.activity.QRScanActivity.onCreate(Unknown Source) at android.app.Activity.performCreate(Activity.java:4465) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) at android.app.ActivityThread.access$600(ActivityThread.java:123) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4424) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NoSuchFieldError: no field with name=’peer’ signature=’J’ in class Lnet/sourceforge/zbar/ImageScanner; at net.sourceforge.zbar.ImageScanner.init(Native Method) […]

Android studio – 执行任务失败’:app:preDexDebug’

当我试图通过Android studio在模拟器中运行应用程序时,我收到错误“执行失败的任务’:app:preDexDebug’” 完整堆栈跟踪: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ‘:app:preDexDebug’. > com.android.ide.common.internal.LoggedErrorException: Failed to run command: e:\developer\Android\sdk\build-tools\21.1.2\dx.bat –dex –output E:\developer\AndroidStudioProjects\OMGAndroid\app\build\intermediates\pre-dexed\debug\support-annotations-21.0.3-c91f7c2a85920982313a91e2dffb704ba92c7823.jar E:\developer\Android\sdk\extras\android\m2repository\com\android\support\support-annotations\21.0.3\support-annotations-21.0.3.jar Error Code: 1 Output: Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. * Try: Run with –info […]

Bamboo Agent:找不到Build Tools修订版23.0.3

我使用Linux代理池来构建我的应用程序。 偶尔会有一个代理导致构建失败并出现错误: FAILURE: Build failed with an exception. What went wrong: Execution failed for task ‘:ComponentThatReqBuildToolsRev23.0.3:preBuild’. > failed to find Build Tools revision 23.0.3 因为我的构建代理是远程的(android是预安装的/ opt / android-sdk-linux / tools / android),所以我无法预安装平台工具,构建工具等,所以我的项目中包含了一个makefile。 签出代码后,它调用makefile中的方法: #!/bin/bash git submodule init git submodule update make updateSDK # EOF makefile中的方法是: PACKAGES = “tools,platform-tools,build-tools-21.1.2,android-22,build-tools-23.0.3,android-21,extra-android-support,extra-android-m2repository,extra-google-m2repository,extra-google,google_play_services” updateSDK: (sleep 5 && while [ 1 […]

构建工具错误“请安装Android构建工具版本19.1.0或更高版本”

我正在Android studio中导入cordova项目并收到此错误错误:未find已安装的构建工具。 请安装Android构建工具版本19.1.0或更高版本。 我已经安装了所有Build工具。 即使我已经通过这篇文章,但无法解决错误。 链接1 link2 我已经看到很多关于操作系统的问题,但没有得到任何解决方案。 帮助将不胜感激。 Thankz

BuildConfig.DEBUG与ApplicationInfo.FLAG_DEBUGGABLE

通过从代码中获取androidManifest的“debuggable”值来引用? ,有两种选项可以检查构建是否可调试: 1.)BuildConfig.DEBUG标志 if (BuildConfig.DEBUG)` 2.)ApplicationInfo.FLAG_DEBUGGABLE if (0 != (getContext().getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE)) 它们是两个相同的,还是不同的? 什么时候用?