无论如何,应用程序都找不到应用程序默认凭据

时间:2017-11-13 05:14:33

标签: android google-app-engine google-authentication google-cloud-vision

使用com.google.cloud:google-cloud-vision:0.28.0-beta

在Android 10上使用Android Studio 3运行

使用build.gradle中的这些包选项

packagingOptions {
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/notice.txt'
    exclude 'META-INF/ASL2.0'

    exclude 'project.properties'
    exclude 'META-INF/io.netty.versions.properties'
    exclude 'META-INF/INDEX.LIST'
}

使用https://cloud.google.com/vision/docs/detecting-fulltext

中的本地图像示例代码构建应用程序之后

我按照指示进行了操作 https://cloud.google.com/vision/docs/auth

和向下路径1& 2中的“应用程序默认凭据如何工作” https://developers.google.com/identity/protocols/application-default-credentials

GOOGLE_APPLICATION_CREDENTIALS error

等其他SO一样

在步骤1结合链接的SO并且运行gcloud auth application-default print-access-token后,打印访问令牌

gcloud auth application-default login的第2步之后

  

凭据保存到文件:[C:\ Users \ USER \ AppData \ Roaming \ gcloud \ application_default_credentials.json]

     

任何请求的库都将使用这些凭据   应用程序默认凭据。

然而无论我做什么,该应用程序总是崩溃 java.io.IOException:应用程序默认凭据不可用。通过运行路径1和2之后链接的代码,在执行AnnotateImageRequest之外另外验证这一点,以查看我是否可以以编程方式获取凭据。

    return Single.fromCallable(new Callable<Object>() {
        @Override
        public Object call() throws Exception {
            GoogleCredential credential = GoogleCredential.getApplicationDefault();

            return new Object();
        }
    }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread());

通过implementation 'com.google.api-client:google-api-client:1.23.0'

可以使用GoogleCredential对象
android {
...
    configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:1.3.9'
    }
...
}

我有50个标签深没有回答工作,我希望有人遇到这个并且可以帮助我,因为否则我完全陷入困境

0 个答案:

没有答案