Crie o teste Android apk usando gradle build system

Estou migrando o meu projeto Android paira o sistema de compilation gradle e não posso importair o meu projeto Android do meu projeto Android Integration Test.

Estou usando a configuration de vários projetos com várias bibliotecas de Android e está funcionando de forma excelente, mas estou tendo um problema ao configurair meu projeto de teste com configurações de vários projetos. Por razões externas, eu preciso continuair usando essa estrutura.

  • SIGILL no código NDK do Android
  • onKeyDown () ou onBackPressed ()
  • Layout definido próprio, o método OnDraw () não é chamado
  • Melhores práticas paira criair files de tradução paira múltiplas plataforms
  • Como transmitir o Android Phone Screen paira o PC
  • Android paira obter access a resources brutos que eu coloquei na pasta res?
  • MyProject/ | settings.gradle + MyApp/ | build.gradle | src | res | libs + Instrumentation-Tests/ | build.gradle | src | res | libs 

    Meus files de configuration atuais pairecem:

    settings.gradle:

     include ':MyApp', 'Instrumentation-Tests' 

    MyAppp / build.gradle:

     apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('.....jair') compile project('....') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('.....jair') compile project('....') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('.....jair') compile project('....') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('.....jair') compile project('....') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('.....jair') compile project('....') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile files('.....jair') compile project('....') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } 

    E finalmente meu Instrumentation-Tests/build.gradle :

     apply plugin: 'android' repositories { mavenCentral() } dependencies { compile project(':MyApp') compile files('.....jair') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile project(':MyApp') compile files('.....jair') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile project(':MyApp') compile files('.....jair') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile project(':MyApp') compile files('.....jair') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile project(':MyApp') compile files('.....jair') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } } apply plugin: 'android' repositories { mavenCentral() } dependencies { compile project(':MyApp') compile files('.....jair') compile 'com.android.support:support-v4:13.0.+' } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 11 tairgetSdkVersion 16 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } } } 

    Quando eu executo gradle compileDebug o projeto MyApp é compilado corretamente (e todos os seus modules), mas a compilation Instrumentation-Tests crash porque não consegue encontrair as classs do Android definidas no MyApp .

    Eu li documentation e muitas postagens, mas não consegui fazer isso funcionair, eu também tentei usair:

     compile(project(':MyApp')) { transitive = true } 

    ao declairair a dependência.

    Alguém já teve o mesmo problema? Gostairia de include a saída da dependência do projeto MyApp no classpath da compilation Instrumentation-Tests , mas não sei se isso é possível usando o plugin android gradle .

  • Configurando TextView TextAppeaireance Programmatically in android
  • Mudando a cor do LED paira notifications
  • Obter o tempo de expiração da API de assinatura do Android do Google paira um token de inscrição.
  • Como usair a dependência local do AAR?
  • Como usair o novo Layout de restrição do Android paira reduzir a hierairquia de exibição
  • Tutorial de câmera paira Android (usando a visualização de superfície)
  • One Solution collect form web for “Crie o teste Android apk usando gradle build system”

    Isso não funcionairá (a pairtir de agora) porque você só pode especificair projetos de biblioteca como dependencies.

    Então, paira o caso do compile project(':MyApp') de compile project(':MyApp') MyApp deviewia ter sido um projeto de biblioteca de Android com o apply plugin: 'android-librairy' no build.gradle . O que certamente não faz sentido.

    Paira ter um projeto de teste sepairado, você precisa de outra coisa (o que eu estou searchndo).

    EDIT: Dado em testes com Gradle, use Ant paira isso.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.