FATAL EXCEPTION: main
Процесс: nixerton.everemotequicktask, PID: 11611
java.lang.NullPointerException: попытка вызвать метод интерфейса 'void
com.android.okhttp.internal.http.HttpStream.writeRequestHeaders (com.android.okhttp.Request)»
на нулевой ссылке на объект
на com.android.okhttp.internal.http.HttpEngine.readResponse (HttpEngine.java:593)
на com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute (HttpURLConnectionImpl.java:471)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse (HttpURLConnectionImpl.java:407)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseMessage (HttpURLConnectionImpl.java:534)
в com.android.tools.profiler.support.network.httpurl.TrackedHttpURLConnection.trackResponse (TrackedHttpURLConnection.java:86)
в com.android.tools.profiler.support.network.httpurl.TrackedHttpURLConnection.tryTrackResponse (TrackedHttpURLConnection.java:101)
в com.android.tools.profiler.support.network.httpurl.TrackedHttpURLConnection.getResponseCode (TrackedHttpURLConnection.java:308)
в com.android.tools.profiler.support.network.httpurl.HttpURLConnection $ .getResponseCode (HttpURLConnection $ .java: 92)
в nixerton.everemotequicktask.EveAIORemote.PostRequest (EveAIORemote.java:30)
at nixerton.everemotequicktask.EveAIORemote $ 1.onClick (EveAIORemote.java:54)
на android.view.View.performClick (View.java:6294)
на android.view.View $ PerformClick.run (View.java:24770)
на android.os.Handler.handleCallback (Handler.java:790)
на android.os.Handler.dispatchMessage (Handler.java:99)
на android.os.Looper.loop (Looper.java:164)
на android.app.ActivityThread.main (ActivityThread.java:6494)
в java.lang.reflect.Method.invoke (родной метод)
в com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:438)
на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:807)
Я получаю это исключение, когда мой PostRequest запускается нажатием кнопки. Хотя понятия не имею, почему это происходит.
Это мой код:
public class EveAIORemote extends AppCompatActivity {
TextView tv;
Button btn;
public void PostRequest(String url_from_text) throws IOException {
String url = url_from_text;
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("User-Agent", "Mozilla/5.0");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
//print in String
System.out.println(response.toString());
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_eve_aioremote);
btn = (Button) findViewById(R.id.Button1);
tv = (TextView) findViewById(R.id.textView);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
PostRequest("apilink");
} catch (IOException e){
e.printStackTrace();
}
}
});
}
}
Я не поместил свою фактическую ссылку API там, поскольку она содержит несколько частных сведений, но я получаю ту же ошибку с другими подобными ссылками API.