无法解析主机pokeAPI

时间:2017-12-12 18:55:29

标签: android kotlin

我想从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

你知道问题的来源吗?

1 个答案:

答案 0 :(得分:0)

我已阅读this,我必须在我的清单中添加此权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

现在正在工作。谢谢你的回复。