На данный вопрос уже ответили:
написал маленький код для отправки POST запроса на сайт, вообще нифига, вылеты, вот сам код:
public class MainActivity extends AppCompatActivity { TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.tv);
Log.d("OKHTTP3", "Post function called.");
String url = "http://login.mysite.ru/user/login";
OkHttpClient client = new OkHttpClient();
MediaType JSON = MediaType.parse("appllication/json;charset=utf-8");
JSONObject actuldata = new JSONObject();
try {
actuldata.put("login","myLogin");
actuldata.put("password","myPassword1");
} catch (JSONException e) {
Log.d("OKHTTP3", "JSON Exception");
e.printStackTrace();
}
RequestBody body = RequestBody.create(JSON, actuldata.toString());
Log.d("OKHTTP3", "Request body created.");
/* Request newReq = new Request.Builder()
.url(url)
.post(body)
.build();*/
Request req = new Request.Builder().url(url).post(body).build();
try {
Response response = client.newCall(req).execute();
Log.d("OKHTTP3", "Request done, go the response.");
tv.setText(response.body().string());
} catch (IOException e) {
e.printStackTrace();
}
}
}
В logcat такое
05-22 17:53:45.955 26910-26910/ru.kiceargy.app D/OKHTTP3: Post function called.
05-22 17:53:45.988 26910-26910/ru.kiceargy.app D/OKHTTP3: Request body created.
05-22 17:53:46.018 26910-26910/ru.kiceargy.app D/AndroidRuntime: Shutting down VM
05-22 17:53:46.019 26910-26910/ru.kiceargy.app E/AndroidRuntime: FATAL EXCEPTION: main
Process: ru.kiceargy.app, PID: 26910
java.lang.RuntimeException: Unable to start activity ComponentInfo{ru.kiceargy.app/ru.kiceargy.app.MainActivity}: android.os.NetworkOnMainThreadException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2464)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2524)
at android.app.ActivityThread.access$900(ActivityThread.java:154)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1391)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:234)
at android.app.ActivityThread.main(ActivityThread.java:5526)
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 okhttp3.Dns$1.lookup(Dns.java:39)
at okhttp3.internal.connection.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:172)
at okhttp3.internal.connection.RouteSelector.nextProxy(RouteSelector.java:138)
at okhttp3.internal.connection.RouteSelector.next(RouteSelector.java:80)
at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:178)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:129)
at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:98)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:109)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:124)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:170)
at okhttp3.RealCall.execute(RealCall.java:60)
at ru.kiceargy.app.MainActivity.onCreate(MainActivity.java:55)
at android.app.Activity.performCreate(Activity.java:6285)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1108)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2417)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2524)
at android.app.ActivityThread.access$900(ActivityThread.java:154)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1391)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:234)
at android.app.ActivityThread.main(ActivityThread.java:5526)
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)
AsyncTask я вообще не использую и что делать?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
У меня есть JSON, который нужно прочитать в объект при помощи ObjectMapperВыглядит это так:
У меня есть контроллер, который принимает два RequestPart: JSON и MultipartFile:
Хочу что бы сайт отображался на всех устройствах одинаково(отображался так как на 1905px отображается)