小编say*_*now的帖子

Android Gradle DexException:多个dex文件定义Lorg/hamcrest/Description

com.android.dex.DexException:多个dex文件定义Lorg/hamcrest/Description

尝试通过Android Studio或我的应用程序上的Gradle命令行进行调试构建/测试时发生.

发布版本(没有测试)工作正常但是一旦包含测试(hamcrest作为测试库),构建就会因上述错误而失败.

我已经检查了我的模块依赖项,并且没有重复的要求,gradle -q依赖项证实了这一点.


项目settings.gradle

include ':[library module]'
include ':[main module]'
Run Code Online (Sandbox Code Playgroud)

项目build.gradle

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.9.+'
        classpath 'org.robolectric.gradle:gradle-android-test-plugin:0.9.+'
    }
}

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

[library module] build.gradle

apply plugin: 'android-library'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 19
    }

    packagingOptions {
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
}

dependencies {
    compile 'com.google.zxing:core:3.0.+'
    compile 'com.bugsnag:bugsnag-android:2.1.1+'
}
Run Code Online (Sandbox Code Playgroud)

[主模块] build.gradle

apply …
Run Code Online (Sandbox Code Playgroud)

android gradle android-studio android-gradle-plugin

28
推荐指数
3
解决办法
1万
查看次数

Robospice/Retrofit后台服务访问数据库

我已成功创建了一个Retrofit API Rest客户端,同时进行GETPOST调用,并将其作为后台服务整合到Robospice中.

但是,我希望Robospice服务连接到数据库,并从GET调用异步地保留检索到的对象.使用Retrofit Callback类似乎是显而易见的方式,但连接到数据库需要Context,我担心泄漏Context.

那么,在处理请求之前和之后,让Robospice SpiceService将数据持久保存到数据库的最佳方法是什么?

android robospice retrofit

8
推荐指数
1
解决办法
3014
查看次数

无法使用Android Studio 0.60/Gradle 0.11解析build.gradle中的类

使用Android Studio 0.5.9/Gradle 0.9建立应用程序正常工作但升级到Android Studio 0.6.0/Gradle 0.11会导致以下错误.

不知何故,Studio似乎已经失去了解析build.gradle文件顶部的android工具导入的能力.

有人对如何解决这个问题有任何想法吗?

build file 'Users/[me]/Repositories/[project]/[module]/build.gradle': 1: unable to resolve class com.android.builder.DefaultManifestParser @ line 1, column 1.
import com.android.builder.DefaultManifestParser 
1 error

at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:302)
at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:858)
at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:548)
at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:497)
at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:306)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:287)
at org.gradle.groovy.scripts.internal.DefaultScriptCompilationHandler.compileScript(DefaultScriptCompilationHandler.java:115)
... 77 more
2014-06-09 10:15:28,537 [  92905]   INFO - .BaseProjectImportErrorHandler - Failed to import Gradle project at '/Users/[me]/Repositories/[project]'
org.gradle.tooling.BuildException: Could not run build action using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.12-all.zip'.
at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:53)
at …
Run Code Online (Sandbox Code Playgroud)

android android-studio android-gradle-plugin

7
推荐指数
1
解决办法
6291
查看次数

改造@Body在HTTP请求中显示为参数

我之前已成功使用Square的Retrofit进行@GETWeb API调用,但是当尝试@BODY@POST调用中发送JSON时,在服务器(Rails)上,JSON显示为参数而不是正文请求.

我的理解是将该@BODY方法参数添加到正文中的请求中.

知道我做错了什么吗?

WebApi:

@POST("/api/v1/gear/scans.json")
Response postScans(
    @Header(HEADER_AUTH) String token,
    @Body JsonObject scans
);
Run Code Online (Sandbox Code Playgroud)

提出网络请求:

RestAdapter restAdapter = new RestAdapter.Builder()
    .setServer(api_url)
    .build();
WebApi webApi = restAdapter.create(AssetsWebApi.class);     
Response response = webApi.postScans(auth_token, valid_json);
Run Code Online (Sandbox Code Playgroud)

android ruby-on-rails http-post retrofit

5
推荐指数
1
解决办法
8509
查看次数

Android 视图性能 - 在两个视图之间切换

性能问题 - 如果我有两个相互排斥的视图(例如成功通知/失败通知) - 从性能角度来看,最好使用:

1)parentView.removeView(indexOfChild)addView()在两者之间过渡

2)覆盖两个视图并切换它们的可见性

3) 使用 ViewSwitcher

performance android

0
推荐指数
1
解决办法
460
查看次数