package com.example.a110101;
import android.os.Handler;
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class OkUtils {
private Handler handler=new Handler();
private static OkUtils okUtils;
private OkHttpClient client;
private OkUtils(){
client=new OkHttpClient();
}
public static OkUtils getInstance(){
if (okUtils==null){
synchronized (Object.class){
if (okUtils==null){
return okUtils=new OkUtils();
}
}
}
return okUtils;
}
public void get(String url, final Listener listener){
Request request = new Request.Builder().url(url).get().build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
final String message = e.getMessage();
handler.post(new Runnable() {
@Override
public void run() {
listener.error(message);
}
});
}
@Override
public void onResponse(Call call, Response response) throws IOException {
final String string = response.body().string();
handler.post(new Runnable() {
@Override
public void run() {
listener.json(string);
}
});
}
});
}
public void post(String url, HashMap<String, String> map, final Listener listener){
Set<Map.Entry<String, String>> entries = map.entrySet();
FormBody.Builder builder = new FormBody.Builder();
for (Map.Entry<String, String> i:entries) {
builder.add(i.getKey(),i.getValue());
}
FormBody formBody = builder.build();
Request request = new Request.Builder().url(url).post(formBody).build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, final IOException e) {
handler.post(new Runnable() {
@Override
public void run() {
listener.error( e.getMessage());
}
});
}
@Override
public void onResponse(Call call, Response response) throws IOException {
}
});
}
}
package com.example.a110101;
import android.os.Handler;
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class OkUtils {
private Handler handler=new Handler();
private static OkUtils okUtils;
private OkHttpClient client;
private OkUtils(){
client=new OkHttpClient();
}
public static OkUtils getInstance(){
if (okUtils==null){
synchronized (Object.class){
if (okUtils==null){
return okUtils=new OkUtils();
}
}
}
return okUtils;
}
public void get(String url, final Listener listener){
Request request = new Request.Builder().url(url).get().build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
final String message = e.getMessage();
handler.post(new Runnable() {
@Override
public void run() {
listener.error(message);
}
});
}
@Override
public void onResponse(Call call, Response response) throws IOException {
final String string = response.body().string();
handler.post(new Runnable() {
@Override
public void run() {
listener.json(string);
}
});
}
});
}
public void post(String url, HashMap<String, String> map, final Listener listener){
Set<Map.Entry<String, String>> entries = map.entrySet();
FormBody.Builder builder = new FormBody.Builder();
for (Map.Entry<String, String> i:entries) {
builder.add(i.getKey(),i.getValue());
}
FormBody formBody = builder.build();
Request request = new Request.Builder().url(url).post(formBody).build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, final IOException e) {
handler.post(new Runnable() {
@Override
public void run() {
listener.error( e.getMessage());
}
});
}
@Override
public void onResponse(Call call, Response response) throws IOException {
}
});
}
}
package com.example.a110101;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.widget.ListView;
public class Main2Activity extends AppCompatActivity {
private static final String TAG = "Main2Activity";
private ListView listView;
private String url="https://www.apiopen.top/satinApi?type=1&page=2";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
initView();
OkUtils.getInstance().get(url, new Listener() {
@Override
public void error(String message) {
}
@Override
public void json(String json) {
Log.i(TAG, "json: " + json);
}
});
MyAdapter adapter = new MyAdapter();
listView.setAdapter(adapter);
new MyAsyncTask(adapter).execute(url);
}
private void initView() {
listView = (ListView) findViewById(R.id.listView);
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<ImageView
android:layout_width="match_parent"
android:layout_height="200dp"
android:src="@mipmap/ic_launcher" />
<TextView
android:layout_width="match_parent"
android:layout_height="50dp" />
<EditText
android:id="@+id/username"
android:layout_width="match_parent"
android:layout_height="50dp"
android:hint="请输入您的用户名" />
<EditText
android:id="@+id/password"
android:layout_width="match_parent"
android:layout_height="50dp"
android:hint="请输入您的密码"
android:inputType="textPassword" />
<CheckBox
android:id="@+id/remember"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="记住密码" />
<Button
android:textColor="#FFFFFF"
android:background="#5460C5"
android:onClick="login"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="登录" />
<View
android:layout_width="match_parent"
android:layout_height="10dp"></View>
<Button
android:textColor="#FFFFFF"
android:background="#D43930"
android:onClick="sign_in"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="点击注册" />
<View
android:layout_width="match_parent"
android:layout_height="10dp"></View>
<Button
android:background="#35100E"
android:textColor="#FFFFFF"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="注销" />
</LinearLayout>
package com.example.a103101;
import android.os.Handler;
import android.util.Log;
import java.io.File;
import java.io.IOException;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class OkHttpUtils {
private Handler handler=new
Handler();
private static OkHttpUtils okHttpUtils=null;
private OkHttpClient client;
private OkHttpUtils(){
client=new OkHttpClient.Builder().build();
}
public static OkHttpUtils getInstance(){
if (okHttpUtils==null){
synchronized (Object.class){
if (okHttpUtils==null){
okHttpUtils=new OkHttpUtils();
}
}
}
return okHttpUtils;
}
public void get(String url, final MyOkListener myOkListener){
Request request = new Request.Builder().url(url).build();
Log.i("client", "get: "+client);
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, final IOException e) {
Log.i("TAG", "onFailure: 请求数据失败"+e.getMessage());
handler.post(new Runnable() {
@Override
public void run() {
myOkListener.getError(e.getMessage());
}
});
}
@Override
public void onResponse(Call call, Response response) throws IOException {
final String string = response.body().string();
Log.i("TAG", "onFailure: 请求数据成功"+string);
handler.post(new Runnable() {
@Override
public void run() {
myOkListener.getJson(string);
}
});
}
});
}
public void post(String url){
}
public void load(String url){
}
public void upload(String url){
RequestBody requestBody = RequestBody.create(MediaType.parse("media/mp4"), new File("/storage/emulated/0/Movies/cnm.mp4"));
MultipartBody multipartBody = new MultipartBody.Builder().setType(MultipartBody.FORM).addFormDataPart("file", "mmm.mp4",requestBody).build();
Request request = new Request.Builder().url("http://169.254.44.2/hfs/")
.post(multipartBody)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
}
});
}
}
1101
最新推荐文章于 2024-08-07 13:33:07 发布