安卓访问本机服务器的网络配置文件
AndroidManifest.xml
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapplication"> <uses-permission android:name="android.permission.INTERNET"/> <!-- 允许修改wifi状态的权限 --> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.MyApplication" android:networkSecurityConfig="@xml/network_security_config"> <activity android:name=".MyMessageActivity" android:exported="false" /> <activity android:name=".yyRecordsActivity" android:exported="false" android:label="@string/title_activity_yy_records" android:theme="@style/Theme.MyApplication.NoActionBar" /> <activity android:name=".qdRecordsActivity" android:exported="false" android:label="@string/title_activity_qd_records" android:theme="@style/Theme.MyApplication.NoActionBar" /> <activity android:name=".MessageActivity" android:exported="false" android:label="@string/title_message" /> <activity android:name=".AppoinmentActivity" android:exported="false" android:label="@string/title_activity_appoinment" android:theme="@style/Theme.MyApplication.NoActionBar" /> <activity android:name=".BaseActivity" android:exported="false" /> <activity android:name=".MainActivity" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
network_security_config.xml
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config cleartextTrafficPermitted="true" /> </network-security-config>
OkHttpUtils
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
package com.example.myapplication.utils; import android.content.Context; import okhttp3.Callback; import okhttp3.MediaType; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; public class OkHttpUtils { private static final OkHttpClient CLIENT=new OkHttpClient(); private static SharedPreferenceUtils sharedPreferenceUtils; public static void get(String url,OkHttpCallback callback) { callback.url=url; Request request=new Request.Builder().url(url).build(); CLIENT.newCall(request).enqueue(callback); } public static final MediaType JSON=MediaType.parse("application/json;charset=UTF-8"); public static void post (String url,String json,OkHttpCallback callback){ callback.url=url; RequestBody body=RequestBody.create(JSON,json); Request request=new Request.Builder().addHeader("cookie", "p1u_id=4eb591e73554db0f4d3300cb6561" + "13abfb968ef6b0ee2b5de0a35caa5217c51faa028b453576b35c").url(url).post(body).build(); CLIENT.newCall(request).enqueue(callback); } public static void downFile(String url,final String saveDir,OkHttpCallback callback){ callback.url=url; Request request = new Request.Builder().addHeader("cookie", "p1u_id=4eb591e73554db0f4d3300cb6561" + "13abfb968ef6b0ee2b5de0a35caa5217c51faa028b453576b35c").url(url).build(); CLIENT.newCall(request).enqueue(callback); } }
OkHttpCallback
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
package com.example.myapplication.utils; import android.util.Log; import java.io.IOException; import okhttp3.Call; import okhttp3.Callback; import okhttp3.Response; public class OkHttpCallback implements Callback { private final String TAG=OkHttpCallback.class.getSimpleName(); public String url; public String result; public void onResponse(Call call, Response response) throws IOException { Log.d(TAG,"url"+url); result = response.body().string().toString(); Log.d(TAG,"请求成功"+result); onFinish("success",result); } public void onFailure(Call call, IOException e){ Log.d(TAG,"url"+url); Log.d(TAG,"请求失败"+e.toString()); onFinish("Failure",e.toString()); } public void onFinish(String status,String msg){ Log.d(TAG,"url:"+url+"status"+status+"msg"+msg); } }