Articles of android studio

在Android Studio中将集成testing与unit testing分离

我试图在Android Studio 0.9中分离出集成testing。 我已经将以下内容添加到构build文件中: sourceSets { integrationTest { java.srcDir file('src/integrationTest/java') } } task integrationTest(type: Test) { testClassesDir = sourceSets.integrationTest.output.classesDir classpath = sourceSets.integrationTest.runtimeClasspath } 我遇到了几个问题: 该任务将运行,但它没有其余的项目文件可用,所以我得到有关丢失类的错误。 我发现了一些Java特定的解决scheme,例如: http://selimober.com/blog/2014/01/24/separate-unit-and-integration-tests-using-gradle/ https://blog.safaribooksonline.com/2013/08/22/gradle-test-organization/ 但我一直无法弄清楚如何让这个工作与Android Studio。 main和main.output和依赖关系的各种组合似乎不起作用,我得到的错误如: Error:(33, 0) Could not find property 'main' on SourceSet container.. 这是有道理的android插件定义自己的源集,但这些都不工作。 IDE不会将该目录识别为testing源目录。 出于testing目的,我将源代码集名称更改为androidTest ,并正确地获取了绿色文件夹图标,并且testing与已经在androidTest定义的现有unit testing一起运行。

用android studio混淆多个模块

我遇到了gradle proguard问题…我有以下几个模块: App:主要的应用程序模块。 依赖于ModuleA和ModuleC ModuleA:库模块。 有依赖ModuleB和jar依赖。 ModuleB:库模块 ModuleC:库模块 穿:穿app模块。 build.gradle文件: – 应用程序: buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':ModuleA') compile project(':ModuleC') wearApp project(':Wear') } ModuleA: buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } dependencies { compile fileTree(dir: 'libs', include: […]

即时运行需要比标准版本更长的时间

即时运行已经有一段时间了,也就是说,它比标准版本要慢。 AOSP错误跟踪器中有一些内容,但是我无法解决这个问题。 我相信你们中的一些人会帮忙。 没有即时运行 build设需要约1.30分钟。 随着即时运行 我第一次运行该应用程序,然后应用一些小的变化。 例如,在方法int a = 1更改为int a = 2 ,或者更改一个string。 然后再次点击运行。 怎么了: 一个看似完整的构build发生(在我所有的模块上调用assembleDebug )。 需要约1.30分钟。 第二轮继续,只是调用app:assembleDebug 。 大概需要一分钟: 16:27:10 Executing tasks: [:app:assembleDebug] 16:28:16 Gradle build finished in 1m 5s 264ms 16:28:22 Instant Run applied code changes and restarted the app. 在第一轮,没有输出任何事件日志或Gradle控制台。 在第二轮,Gradle控制台输出很多东西,并以 BUILD SUCCESSFUL Total time: 51.385 secs PREDEX CACHE […]

Android注释/ Gradle / Android Studio构build问题

我正在将一个项目迁移到Android Studio / Gradle,并且在使用Android Annotations正确构build项目时遇到一些问题。 从gradle控制台输出它看起来像注释处理在编译后发生? 是对的吗? 这不应该发生吗? 奇怪的是,如果我点击运行,“编辑configuration”对话框出现在底部的“错误:默认活动未find”。 我有另一个项目工作与一个非常类似的build.gradle文件,它运行良好,我完全难住这一个。 任何帮助将非常感激! 请注意我也尝试了其他各种方法,包括https://github.com/excilys/androidannotations/wiki/Building-Project-Gradle,但结果没有任何区别。 我的build.gradle在项目根目录下: // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.7.+' } } allprojects { repositories { mavenCentral() } } 从我的/ android文件夹build.gradle: apply plugin: 'android' ext.androidAnnotationsVersion = '2.7.1'; configurations […]

首先提交Android Studio项目 – 应该抛弃什么?

我正在做我最初提交一个新的Android项目。 我对代码的状态很满意,但是想知道哪些文件要添加+提交,哪些文件应该省略。 这里是我的.gitignore内容: # built application files *.apk *.ap_ # files for the dex VM *.dex # Java class files *.class # generated files bin/ gen/ # Local configuration file (sdk path, etc) local.properties # Eclipse project files .classpath .project # Proguard folder generated by Eclipse proguard/ # Intellij project files *.iml *.ipr *.iws .idea/ […]

如何使用deviceCheck任务在远程设备上运行testing

在http://tools.android.com/tech-docs/new-build-system/user-guide上 ,定义了以下任务: 组装汇总项目输出的任务 检查运行所有检查的任务。 connectedCheck运行需要连接设备或模拟器的检查。 他们将并行运行在所有连接的设备上。 deviceCheck使用API​​运行检查以连接到远程设备。 这在CI服务器上使用。 构build这个任务既能进行组装和检查 清理此任务清理项目的输出 我正在设置一个Jenkins CI来运行我的(Espresso)testing, deviceCheck任务描述似乎与此有关。 但是我找不到任何关于如何在CI服务器上使用这个任务来执行远程设备testing的文档或例子。 有谁知道如何使用它?

Android Studio – Gradle 1.5 – 核心库选项

我的Android项目和Gradle 1.5有问题。 我无法编译我添加的依赖关系。 目前我正在开发一个Java EE应用程序,我想从我的Android设备执行一个EJB查find我正在运行的Wildfly10。 我知道,从Android设备查找可能不是最好的select,REST的web服务会更好,但这不是重点。 在我的项目中,我添加了一个新的模块,包含我所有的外部库,并且将这个模块添加到我的应用程序中,作为依赖于“编译”级别。 一切正常,直到我想添加jboss-client.jar。 在dex期间,他正在抱怨javax.transaction。*。 我现在所做的 添加了multiDexEnabled true 添加preDexLibraries false 玩弄所有其他的dex选项 我也试过这个: Android dx工具 这个: Android Studio忽略–core-library标志 并在Android Studio设置中设置–core-library标志 为什么他们不工作 解决scheme:我修改了我的每个构build工具中的dx.bat,我没有任何改变。 这只是不工作 解决scheme:com.android.build.gradle.tasks.Dex不知道(我不知道如何添加),coreLibrary不支持Gradle 1.5 解决scheme:被gradle完全忽略 minSDK为19,targetSDK为23,build-tool为23.0.2我用命令行调用dx.bat,参数与gradle相同,我只加了–core-library arg,它工作正常! 但是这并不能解决Android Studio和Gradle中的问题。 谁能帮帮我吗? 更新:好的,我看了一下com.android.dx.command.Main的源代码。 有一个公共的内部类“参数”,其中包含(可以使用的)参数,也coreLibrary = false。 现在我只需要知道如何修改它。 有人知道吗? 最好的问候,克里斯

无法使用Android版本4.0.3创build模拟器

我需要testing我的Android应用程序与Android版本4.0.3,但我无法创build一个与此Android版本的模拟器。 请查看以下屏幕截图了解更多详情: 为版本4.0.3安装了Intel x86系统映像: 4.0.3版本在select系统映像时没有选项: 已经尝试过,没有运气: 重新启动的Android Studio 将x86文件夹从system-images / android-15 / default移到system-images / android-15文件夹 我该如何解决这个问题? 编辑: 正如BrentM所build议的,我尝试使用android命令行工具来创build它。 它已经成功创build,但是当我试图从Android Studio进行编辑时,会出现错误: 指定的图像文件必须是有效的图像文件 。 系统映像文件的地址:/ Android / Sdk / system-images / android-15 / x86 截图:

我怎样才能使用Android aaptOptions?

aaptOptions.noCompress等的含义是什么? 有人可以向我解释吗? android { aaptOptions { noCompress 'foo', 'bar' ignoreAssetsPattern '!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~' } } 这会影响使用aapt的所有任务。

如何在回收视图中使用OnClickListener?

我基本上试图做的是让回收视图中显示的对象可点击到某个TextView ID,因为我正在制作一个程序,在列表中显示一个专辑封面和它的标题。 我需要能够点击回收站视图中的每一个框,当点击其他信息(作者,发布date,点击歌曲等)时,popup一个TextView,然后返回button(如果可能)返回到专辑列表。 我一直在看这个小时,不能弄清楚如何使OnclickListener为它工作。 如果你知道如何或有任何build议,很高兴听到他们。 谢谢! package com.albumlist.albumlist; import android.content.Context; import android.content.Intent; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; public class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> { private AlbumData[] itemsData; public MyAdapter(AlbumData[] itemsData){ this.itemsData = itemsData; } public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener { private TextView txtViewTitle; private […]