Closed ghost closed 7 years ago
Did you add the key for the freesound API?
I found this:
// Freesound API Properties apiProperties = loadFileProperties("$projectDir/freesound-api.properties") freesound_api_key = apiProperties.getProperty("freesound.api.key", "null") freesound_api_url = "\"https://www.freesound.org/\""
But i cannot find "freesound-api.properties" file )) It means that i need to create him and put key inside?
P.S. Ok its clear now, i need to create him ))
@peter-tackage we should find a better way of storing those keys. Everyone will have an issue with it
Maybe a temporary solution to replace default "null" by a random String (to avoid NPE)
@tomaszpolanski, true. My initial thoughts are that It should fail hard on compilation without the file (and give an obvious message) - then we need to discover how to securely supply the file (or property/whatever) to TravisCI.
Caused by: java.lang.NullPointerException: Cannot return null from a non-@Nullable @Provides method at dagger.internal.Preconditions.checkNotNull(Preconditions.java:47) at com.futurice.freesound.app.module.ConfigModule_ProvideApiModuleApiTokenConfigFactory.get(ConfigModule_ProvideApiModuleApiTokenConfigFactory.java:16) at com.futurice.freesound.app.module.ConfigModule_ProvideApiModuleApiTokenConfigFactory.get(ConfigModule_ProvideApiModuleApiTokenConfigFactory.java:7) at dagger.internal.DoubleCheck.get(DoubleCheck.java:46) at com.futurice.freesound.app.module.ApiModule_ProvideApiInterceptorFactory.get(ApiModule_ProvideApiInterceptorFactory.java:25) at com.futurice.freesound.app.module.ApiModule_ProvideApiInterceptorFactory.get(ApiModule_ProvideApiInterceptorFactory.java:9) at dagger.internal.DoubleCheck.get(DoubleCheck.java:46) at com.futurice.freesound.app.module.ApiModule_ProvideApiOkHttpClientFactory.get(ApiModule_ProvideApiOkHttpClientFactory.java:41) at com.futurice.freesound.app.module.ApiModule_ProvideApiOkHttpClientFactory.get(ApiModule_ProvideApiOkHttpClientFactory.java:12) at dagger.internal.DoubleCheck.get(DoubleCheck.java:46) at com.futurice.freesound.app.module.ApiModule_ProvideFreeSoundApiFactory.get(ApiModule_ProvideFreeSoundApiFactory.java:37) at com.futurice.freesound.app.module.ApiModule_ProvideFreeSoundApiFactory.get(ApiModule_ProvideFreeSoundApiFactory.java:11) at dagger.internal.DoubleCheck.get(DoubleCheck.java:46) at com.futurice.freesound.app.DaggerFreesoundApplicationComponent.getApi(DaggerFreesoundApplicationComponent.java:177) at com.futurice.freesound.feature.search.DaggerSearchActivityComponent$1.get(DaggerSearchActivityComponent.java:75) at com.futurice.freesound.feature.search.DaggerSearchActivityComponent$1.get(DaggerSearchActivityComponent.java:68) at com.futurice.freesound.feature.search.SearchActivityModule_ProvideFreeSoundsSearchServiceFactory.get(SearchActivityModule_ProvideFreeSoundsSearchServiceFactory.java:27) at com.futurice.freesound.feature.search.SearchActivityModule_ProvideFreeSoundsSearchServiceFactory.get(SearchActivityModule_ProvideFreeSoundsSearchServiceFactory.java:10) at dagger.internal.DoubleCheck.get(DoubleCheck.java:46) at com.futurice.freesound.feature.search.SearchActivityModule_ProvideSearchDataModelFactory.get(SearchActivityModule_ProvideSearchDataModelFactory.java:26) at com.futurice.freesound.feature.search.SearchActivityModule_ProvideSearchDataModelFactory.get(SearchActivityModule_ProvideSearchDataModelFactory.java:9) at dagger.internal.DoubleCheck.get(DoubleCheck.java:46) at com.futurice.freesound.feature.search.SearchActivityModule_ProvideSearchViewModelFactory.get(SearchActivityModule_ProvideSearchViewModelFactory.java:38) at com.futurice.freesound.feature.search.SearchActivityModule_ProvideSearchViewModelFactory.get(SearchActivityModule_ProvideSearchViewModelFactory.java:10) at dagger.internal.DoubleCheck.get(DoubleCheck.java:46) at com.futurice.freesound.feature.search.SearchActivity_MembersInjector.injectMembers(SearchActivity_MembersInjector.java:29
P.S. I updated gradle plugin only!