I'm trying to use Google's Speech API in Android project. The example project works. I'm having trouble to use it in my own android app.
build.gradle(Module:app) :
apply plugin: 'com.android.application' apply plugin: 'com.google.protobuf' ext { supportLibraryVersion = '25.4.0' grpcVersion = '1.4.0' } android { compileSdkVersion 25 buildToolsVersion "25.0.3" defaultConfig { applicationId "ApplicationID" minSdkVersion 16 targetSdkVersion 24 // compileOptions { // sourceCompatibility JavaVersion.VERSION_1_5 // targetCompatibility JavaVersion.VERSION_1_5 // } } signingConfigs { release { storeFile file(project.properties.storeFile) storePassword project.properties.storePassword keyAlias project.properties.keyAlias keyPassword project.properties.keyPassword } } productFlavors { dev { // Minimum version with platform multi-dex support minSdkVersion 21 } prod { // Minimum version that can run gRPC (TLS extension) minSdkVersion 16 } } buildTypes { debug { minifyEnabled false multiDexEnabled true } release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release } } configurations.all { resolutionStrategy.force 'com.google.code.findbugs:jsr305:3.0.2' resolutionStrategy.force "com.android.support:support-annotations:$supportLibraryVersion" } } protobuf { protoc { artifact = 'com.google.protobuf:protoc:3.3.0' } plugins { javalite { artifact = "com.google.protobuf:protoc-gen-javalite:3.0.0" } grpc { artifact = "io.grpc:protoc-gen-grpc-java:${grpcVersion}" } } generateProtoTasks { all().each { task -> task.plugins { javalite {} grpc { // Options added to --grpc_out option 'lite' } } } } } // // buildTypes { // release { // minifyEnabled false // proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' // } // } // compileOptions { // targetCompatibility 1.6 // sourceCompatibility 1.6 // } //} dependencies { // compile 'com.android.support:support-v4:18.0.0' // compile 'com.android.support:appcompat-v7:24.2.1' // compile 'com.google.apis:google-api-services-speech:v1-rev8-1.22.0' compile group: 'com.google.cloud', name: 'google-cloud-speech', version: '0.17.1-alpha' // compile 'com.google.android.gms:play-services:11.0.2' compile project(':lib') //This is someother library I'm using compile 'com.android.support:appcompat-v7:25.3.1' compile 'io.grpc:grpc-core:1.4.0' // Support libraries compile "com.android.support:design:$supportLibraryVersion" compile "com.android.support:cardview-v7:$supportLibraryVersion" compile "com.android.support:recyclerview-v7:$supportLibraryVersion" // gRPC compile "io.grpc:grpc-okhttp:$grpcVersion" compile "io.grpc:grpc-protobuf-lite:$grpcVersion" compile "io.grpc:grpc-stub:$grpcVersion" compile 'javax.annotation:javax.annotation-api:1.2' protobuf 'com.google.protobuf:protobuf-java:3.3.1' // OAuth2 for Google API compile('com.google.auth:google-auth-library-oauth2-http:0.7.0') { exclude module: 'httpclient' } // Tests testCompile 'junit:junit:4.12' androidTestCompile 'com.android.support.test:runner:0.5' androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2' } build.gradle(Project: ProjectNAME):
// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() maven { url 'https://maven.google.com' } } dependencies { classpath 'com.android.tools.build:gradle:2.3.3' // for gRPC classpath "com.google.protobuf:protobuf-gradle-plugin:0.8.0" // compile 'com.github.adrielcafe:AndroidAudioConverter:0.0.8' } } allprojects { repositories { jcenter() maven { url 'https://maven.google.com' } maven { url "https://jitpack.io" } } } Now, When I try to import com.google.cloud.speech.v1.SpeechGrpc; I'm getting an error Cannot resolve symbol 'SpeechGrpc'. But import com.google.cloud.speech.v1.RecognitionAudio or RecognizeRequest etcetera works fine.
I've tried adding the expample project's app module as module which didn't allow me to use even import com.google.cloud. So, I either need solution to import Grpc or correct gradle settings to use google's speech API