Làm thế nào để in địa chỉ IP của một trang web trong Android? Tôi có thể chạy inetaddress và in nó bằng cách sử dụng system.out.println() trong netbean. Dưới đây là mẫu mã của tôi.InetAddress trong Android
public String getHostAddress() {
InetAddress addr=null;
try {
addr= InetAddress.getByName("www.google.com");
}
catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return addr.getHostAddress();
}
Luôn hiển thị Rất tiếc, chương trình của bạn đã dừng. Có thể biết có cách nào để nhận địa chỉ IP của trang web được truy cập trong Android không?
05-19 14:22:39.008: I/dalvikvm(1062): threadid=3: reacting to signal 3
05-19 14:22:39.049: I/dalvikvm(1062): Wrote stack traces to '/data/anr/traces.txt'
05-19 14:22:39.688: I/dalvikvm(1062): threadid=3: reacting to signal 3
05-19 14:22:39.828: I/dalvikvm(1062): Wrote stack traces to '/data/anr/traces.txt'
05-19 14:22:39.929: D/AndroidRuntime(1062): Shutting down VM
05-19 14:22:39.948: W/dalvikvm(1062): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
05-19 14:22:40.039: E/AndroidRuntime(1062): FATAL EXCEPTION: main
05-19 14:22:40.039: E/AndroidRuntime(1062): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.destinationurl/com.android.destinationurl.DestinationURL}: android.os.NetworkOnMainThreadException
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.ActivityThread.access$600(ActivityThread.java:123)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.os.Handler.dispatchMessage(Handler.java:99)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.os.Looper.loop(Looper.java:137)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.ActivityThread.main(ActivityThread.java:4424)
05-19 14:22:40.039: E/AndroidRuntime(1062): at java.lang.reflect.Method.invokeNative(Native Method)
05-19 14:22:40.039: E/AndroidRuntime(1062): at java.lang.reflect.Method.invoke(Method.java:511)
05-19 14:22:40.039: E/AndroidRuntime(1062): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
05-19 14:22:40.039: E/AndroidRuntime(1062): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
05-19 14:22:40.039: E/AndroidRuntime(1062): at dalvik.system.NativeStart.main(Native Method)
05-19 14:22:40.039: E/AndroidRuntime(1062): Caused by: android.os.NetworkOnMainThreadException
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1099)
05-19 14:22:40.039: E/AndroidRuntime(1062): at java.net.InetAddress.lookupHostByName(InetAddress.java:391)
05-19 14:22:40.039: E/AndroidRuntime(1062): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:242)
05-19 14:22:40.039: E/AndroidRuntime(1062): at java.net.InetAddress.getByName(InetAddress.java:295)
05-19 14:22:40.039: E/AndroidRuntime(1062): at com.android.destinationurl.DestinationURL.getHostAddress(DestinationURL.java:57)
05-19 14:22:40.039: E/AndroidRuntime(1062): at com.android.destinationurl.DestinationURL.onCreate(DestinationURL.java:40)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.Activity.performCreate(Activity.java:4465)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
05-19 14:22:40.039: E/AndroidRuntime(1062): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
05-19 14:22:40.039: E/AndroidRuntime(1062): ... 11 more
05-19 14:22:40.248: I/dalvikvm(1062): threadid=3: reacting to signal 3
05-19 14:22:40.283: I/dalvikvm(1062): Wrote stack traces to '/data/anr/traces.txt'
05-19 14:22:40.608: I/dalvikvm(1062): threadid=3: reacting to signal 3
05-19 14:22:40.698: I/dalvikvm(1062): Wrote stack traces to '/data/anr/traces.txt'
05-19 14:22:42.078: I/Process(1062): Sending signal. PID: 1062 SIG: 9
1. vui lòng đăng nhật ký sự cố 2. Bạn có quyền truy cập internet trong tệp kê khai không? – MByD
Lỗi của bạn là do bạn đang cố thực hiện truy cập mạng trên chuỗi chính. Xem [Cách khắc phục mạng AndroidOnMainThreadException] (http://www.techblogistech.com/2011/11/how-to-fix-the-android-networkonmainthreadexception/) – Rajesh
Bất kỳ ai cũng có thể hiển thị dự án mẫu về vấn đề này có thể hoạt động đúng ... cảm ơn bạn .. =) – Dummy1234