我想从pokeAPI获取我的android API的数据。我已按照说明进入此页https://github.com/PokeAPI/pokekotlin。
我添加了bluid.gradle(module:app)依赖项:
compile 'me.sargunvohra.lib:pokekotlin:2.3.0'
在build.gradle(Project)中:
allprojects {
repositories {
google()
jcenter()
maven { url 'http://jcenter.bintray.com' }
}
}
我在清单中添加了此权限:
<uses-permission android:name="android.permission.INTERNET" />
获取口袋妖怪物种的代码在asynctask:
private class DownloadPokeAPIData extends AsyncTask<Integer,Void,PokemonSpecies> {
protected PokemonSpecies doInBackground(Integer...numbers){
PokeApi pokeApi = new PokeApiClient();
try {
return pokeApi.getPokemonSpecies(numbers[0].intValue());
}catch(Exception e){
Log.e("AsyncTask error",e.getMessage());
}
return null;
}
protected void onPostExecute(PokemonSpecies result) {
if(result != null) ((TextView)findViewById(R.id.pokemon)).setText(result.getName());
}
}
DownloadPokeAPIData的调用位于MainActivity的onCreate中:new DownloadPokeAPIData().execute(new Integer(1));
但我仍然收到这条消息:
AsyncTask error: Unable to resolve host "pokeapi.co": No address associated with hostname
你知道问题的来源吗?
答案 0 :(得分:0)
我已阅读this,我必须在我的清单中添加此权限:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
现在正在工作。谢谢你的回复。