Android Http包装器
我需要编写一个简单的HTTP包装器,用于在android上使用Facebook SDK 我对Android非常陌生,我正在尝试使用教程,但我发现的所有内容都是基于HttpClient的,即Android Http包装器,android,facebook,http,wrapper,facebook-sdk-3.0,Android,Facebook,Http,Wrapper,Facebook Sdk 3.0,我需要编写一个简单的HTTP包装器,用于在android上使用Facebook SDK 我对Android非常陌生,我正在尝试使用教程,但我发现的所有内容都是基于HttpClient的,即已经弃用的,我不想开始使用Android的弃用功能 所以我的问题是,现在HTTP包装器的最佳实践是什么 谢谢,除非必须,否则不要重新发明轮子 使用 Volley是一个HTTP库,为Android应用程序建立网络 更容易,更重要的是,更快。截击可以通过 打开AOSP存储库 如果你指的是Android框架,那么你可
已经弃用的
,我不想开始使用Android的弃用功能
所以我的问题是,现在HTTP包装器的最佳实践是什么
谢谢,除非必须,否则不要重新发明轮子 使用 Volley是一个HTTP库,为Android应用程序建立网络 更容易,更重要的是,更快。截击可以通过 打开AOSP存储库 如果你指的是Android框架,那么你可以使用的所有库都是围绕它的包装器 您可以始终使用第三方库,如或。它们也会考虑向后兼容性(HttpURLConenction在API 11之前不可用)
如果您计划构建特定于您的使用的框架包装,那么HttpURLConnection是一个合适的选择。至于最佳实践,适用于DefaultHttpConnection的内容在这里继续适用。您可以使用Square的改装库进行网络操作。 您应该创建一个响应拦截器类,如下所示
public class YourWrapper implements Interceptor {
@Override
public Response intercept(Chain chain) throws IOException {
Request request = chain.request();
Response response = chain.proceed(request);
// After you get response you can do what ever you want.
// If you need you can re call same api with return chain.proceed(newRequest);
}
}
您可以将自定义响应侦听器类设置为Rest Api,如下所示:
OkHttpClient client = new OkHttpClient();
client.interceptors().add(new YourWrapper());
RestAdapter restAdapter = new RestAdapter.Builder().setLogLevel(RestAdapter.LogLevel.BASIC)
.setClient(new OkClient(client))
.setEndpoint(url).build();
将包装器响应拦截器设置为RESTAPI后,当您首先获得api结果时,包装器将捕获响应,然后回调将捕获响应 实际上,我所做的是更深入地关注facebook文档,并发现我可以使用GraphRequest与facebook SDK一起工作 例如,获取facebook好友列表如下:
public void getFriendsList(AccessToken acccess_token) throws Exception {
GraphRequest request = GraphRequest.newMyFriendsRequest(acccess_token,new GraphRequest.GraphJSONArrayCallback() {
@Override
public void onCompleted(JSONArray objects, GraphResponse response) {
Type collectionType = new TypeToken<FaceBookProfile>(){}.getType();
FaceBookProfile profile = GsonUtils.createGson().fromJson(response.getRawResponse(), collectionType);
}
}) ;
request.executeAsync();
}
编译'com.google.code.gson:gson:2.3'
}你能给我举一个HttpURLConnection的例子吗-使用facebook Graph API?
dependencies {