无法创建与远程服务的连接

时间:2016-09-24 01:35:55

标签: android android-asynctask

我试图在android中调用Yelp API。我正在使用ASyncTaskLoader,但我仍然无法在模拟器上连接。我之前从未使用过任务加载器,所以我确定那里有#s; s我缺少一些基本的东西,但我已经在这几天了,我似乎无法弄明白。

我还没有实现任何改变ui的东西,因为我只是试图让darn API连接正常工作。

public class YelpActivity extends AppCompatActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_yelp);

        yelpLoader load = new yelpLoader(getApplicationContext());
        load.loadInBackground();

    }

}

这是我的任务加载器。

class yelpLoader extends AsyncTaskLoader {

    static YelpAPI test = new YelpAPI();
   static String CONSUMER_KEY = "";
   static String CONSUMER_SECRET = "";
   static String TOKEN = "";
   static String TOKEN_SECRET = "";

    public yelpLoader(Context context) {

        super(context);

    }
    public  String loadInBackground() {
        String result = "";
        YelpAPI.YelpAPICLI yelpApiCli = new YelpAPI.YelpAPICLI();
        new JCommander(yelpApiCli);

        YelpAPI yelpApi = new YelpAPI(CONSUMER_KEY, CONSUMER_SECRET, TOKEN, TOKEN_SECRET);
        test.queryAPI(yelpApi, yelpApiCli);

        return null;
    }
}

错误日志:

E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: tastr.tastr, PID: 4087
                  java.lang.ExceptionInInitializerError
                      at tastr.tastr.YelpActivity.onCreate(YelpActivity.java:44)
                      at android.app.Activity.performCreate(Activity.java:6237)
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
                      at android.app.ActivityThread.-wrap11(ActivityThread.java)
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
                      at android.os.Handler.dispatchMessage(Handler.java:102)
                      at android.os.Looper.loop(Looper.java:148)
                      at android.app.ActivityThread.main(ActivityThread.java:5417)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
                   Caused by: org.scribe.exceptions.OAuthConnectionException: There was a problem while creating a connection to the remote service.
                      at org.scribe.model.Request.send(Request.java:70)
                      at org.scribe.model.Request.send(Request.java:76)
                      at tastr.tastr.YelpAPI.sendRequestAndGetResponse(YelpAPI.java:129)
                      at tastr.tastr.YelpAPI.searchForBusinessesByLocation(YelpAPI.java:87)
                      at tastr.tastr.YelpAPI.queryAPI(YelpAPI.java:143)
                      at tastr.tastr.YelpAPI.<init>(YelpAPI.java:189)
                      at tastr.tastr.FooLoader.<clinit>(FooLoader.java:11)
                      at tastr.tastr.YelpActivity.onCreate(YelpActivity.java:44) 
                      at android.app.Activity.performCreate(Activity.java:6237) 
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
                      at android.app.ActivityThread.-wrap11(ActivityThread.java) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:148) 
                      at android.app.ActivityThread.main(ActivityThread.java:5417) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
                   Caused by: android.os.NetworkOnMainThreadException
                      at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1273)
                      at java.net.InetAddress.lookupHostByName(InetAddress.java:431)
                      at java.net.InetAddress.getAllByNameImpl(InetAddress.java:252)
                      at java.net.InetAddress.getAllByName(InetAddress.java:215)
                      at com.android.okhttp.internal.Network$1.resolveInetAddresses(Network.java:29)
                      at com.android.okhttp.internal.http.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:188)
                      at com.android.okhttp.internal.http.RouteSelector.nextProxy(RouteSelector.java:157)
                      at com.android.okhttp.internal.http.RouteSelector.next(RouteSelector.java:100)
                      at com.android.okhttp.internal.http.HttpEngine.createNextConnection(HttpEngine.java:357)
                      at com.android.okhttp.internal.http.HttpEngine.nextConnection(HttpEngine.java:340)
                      at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:330)
                      at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:248)
                      at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:433)
                      at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:114)
                      at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:89)
                      at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java)
                      at org.scribe.model.Response.<init>(Response.java:29)
                      at org.scribe.model.Request.doSend(Request.java:117)
                      at org.scribe.model.Request.send(Request.java:66)
                      at org.scribe.model.Request.send(Request.java:76) 
                      at tastr.tastr.YelpAPI.sendRequestAndGetResponse(YelpAPI.java:129) 
                      at tastr.tastr.YelpAPI.searchForBusinessesByLocation(YelpAPI.java:87) 
                      at tastr.tastr.YelpAPI.queryAPI(YelpAPI.java:143) 
                      at tastr.tastr.YelpAPI.<init>(YelpAPI.java:189) 
                      at tastr.tastr.FooLoader.<clinit>(FooLoader.java:11) 
                      at tastr.tastr.YelpActivity.onCreate(YelpActivity.java:44) 
                      at android.app.Activity.performCreate(Activity.java:6237) 
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
                      at android.app.ActivityThread.-wrap11(ActivityThread.java) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:148) 
                      at android.app.ActivityThread.main(ActivityThread.java:5417) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
Application terminated.

0 个答案:

没有答案