我想使用调用Arduino设备上的URL来打开和关闭灯光的按钮来制作简单的Android应用程序。打开网页浏览器并不是必须的。Java Android - 在没有打开浏览器的情况下按下按钮时调用URL
我对Android相当陌生,我已经在这里搜索并找到了一些建议,但它们并不适合我。
也许有人可以让我在正确的方向吗?
这是我的代码到目前为止,当我按下按钮时,没有任何反应。
package de.triscus.arduinoweb;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.view.View.OnClickListener;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class HomeLight extends AppCompatActivity implements OnClickListener {
String msg = "Android : ";
private Button lichterkette1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_light);
lichterkette1 = (Button) findViewById(R.id.Lichterkette1);
lichterkette1.setOnClickListener(this);
}
public void onClick(View v) {
URL url = null;
HttpURLConnection urlConnection = null;
switch (v.getId())
{
case R.id.Lichterkette1:
try {
url = new URL("http://192.168.2.106/?Lichterkette=1");
urlConnection = (HttpURLConnection) url.openConnection();
// urlConnection = (HttpURLConnection) url.openConnection();
Log.d(msg, "Lichterkette1 pressed");
//InputStream in = new BufferedInputStream(urlConnection.getInputStream());
// Log.d(msg, InputStream);
} catch (MalformedURLException e) {
e.printStackTrace();
Log.d(msg, "URL Malformed");
} catch (IOException e) {
e.printStackTrace();
Log.d(msg, "IO exception");
} finally {
urlConnection.disconnect();
Log.d(msg, "Disconnected");
}
}
}
}
这里是logcat的输出:
03-16 15:19:26.133 9805-9805/? I/art: Late-enabling -Xcheck:jni
03-16 15:19:26.143 9805-9805/? I/art: VMHOOK: rlim_cur : 0 pid:9805
03-16 15:19:26.173 9805-9815/? I/art: Debugger is no longer active
03-16 15:19:26.193 9805-9805/? E/Typeface: SANS_LOC file not found.
03-16 15:19:26.584 9805-9805/? D/Atlas: Validating map...
03-16 15:19:26.684 9805-9835/? I/Adreno-EGL: <qeglDrvAPI_eglInitialize:410>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_LA.AF.1.1_RB1.05.00.02.006.020 - CR771817()
OpenGL ES Shader Compiler Version: E031.25.03.06
Build Date: 03/04/15 Wed
Local Branch:
Remote Branch: refs/tags/AU_LINUX_ANDROID_LA.AF.1.1_RB1.05.00.02.006.020
Local Patches: NONE
Reconstruct Branch: NOTHING
03-16 15:19:33.481 9805-9805/de.triscus.arduinoweb D/Android :: Lichterkette1 pressed
03-16 15:19:33.481 9805-9805/de.triscus.arduinoweb D/Android :: Disconnected
03-16 15:19:34.832 9805-9805/de.triscus.arduinoweb D/Android :: Lichterkette1 pressed
03-16 15:19:34.832 9805-9805/de.triscus.arduinoweb D/Android :: Disconnected
预先感谢您
Triscus
PS:互联网/网络的使用是允许
这是行得通的。您的输出表示您正在连接按钮按下的部分,然后最终在您完成时断开连接。 – zgc7009