android模拟器里应用无法启动,贴出LOGCAT求前辈指点

时间:2022-08-25 14:03:26
之前本来是好好的,好像是直接替换了RES里的图标之后,无法启动,也不确定是不是这个引起的.
之前在2.3.3上以及4.2上都可以运行,现在只能在2.3.3上运行,4.2上就直接无法启动了.贴出4.2下的logcat,请前辈指点.


09-10 15:22:51.377: D/dalvikvm(2545): GC_FOR_ALLOC freed 46K, 7% free 2481K/2648K, paused 335ms, total 338ms
09-10 15:22:51.387: I/dalvikvm-heap(2545): Grow heap (frag case) to 3.144MB for 635812-byte allocation
09-10 15:22:51.517: D/dalvikvm(2545): GC_FOR_ALLOC freed 1K, 6% free 3101K/3272K, paused 124ms, total 124ms
09-10 15:22:51.680: D/dalvikvm(2545): GC_CONCURRENT freed <1K, 6% free 3106K/3272K, paused 9ms+89ms, total 167ms
09-10 15:22:51.887: D/AndroidRuntime(2545): Shutting down VM
09-10 15:22:51.927: W/dalvikvm(2545): threadid=1: thread exiting with uncaught exception (group=0x40a71930)
09-10 15:22:51.977: E/AndroidRuntime(2545): FATAL EXCEPTION: main
09-10 15:22:51.977: E/AndroidRuntime(2545): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ruihuo.vgoog/com.ruihuo.vgoog.MainActivity}: android.os.NetworkOnMainThreadException
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.ActivityThread.access$600(ActivityThread.java:141)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.os.Handler.dispatchMessage(Handler.java:99)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.os.Looper.loop(Looper.java:137)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.ActivityThread.main(ActivityThread.java:5041)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at java.lang.reflect.Method.invokeNative(Native Method)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at java.lang.reflect.Method.invoke(Method.java:511)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at dalvik.system.NativeStart.main(Native Method)
09-10 15:22:51.977: E/AndroidRuntime(2545): Caused by: android.os.NetworkOnMainThreadException
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1117)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at java.net.InetAddress.getAllByName(InetAddress.java:214)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:316)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpEngine.connect(HttpEngine.java:311)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:290)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:240)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:282)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:495)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at com.ruihuo.vgoog.AutoUpdate.getJsonContent(AutoUpdate.java:198)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at com.ruihuo.vgoog.AutoUpdate.isUpdate(AutoUpdate.java:171)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at com.ruihuo.vgoog.AutoUpdate.checkUpdate(AutoUpdate.java:89)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at com.ruihuo.vgoog.MainActivity.onCreate(MainActivity.java:33)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.Activity.performCreate(Activity.java:5104)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
09-10 15:22:51.977: E/AndroidRuntime(2545):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
09-10 15:22:51.977: E/AndroidRuntime(2545):  ... 11 more
09-10 15:27:52.177: I/Process(2545): Sending signal. PID: 2545 SIG: 9



以下是MainActivity

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
    private WebView webview;
@SuppressLint("SetJavaScriptEnabled")
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow();
requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.main);
        webview=(WebView)findViewById(R.id.webview);
        webview.setHorizontalScrollBarEnabled(false);
        webview.setVerticalScrollBarEnabled(false);
        //设置WebView属性,能够执行JavaScript脚本
        webview.getSettings().setJavaScriptEnabled(true);
        //加载URL内容
        webview.loadUrl("http://www.test.com/");
        //设置web视图客户端
        webview.setWebViewClient(new MyWebViewClient());
        //设置自动更新检测
        AutoUpdate mAutoUpdate = new AutoUpdate(this);
        mAutoUpdate.sPackageName=getPackageName();
        mAutoUpdate.checkUpdate();  
    }


在线等指点

3 个解决方案

#1


AutoUpdate mAutoUpdate = new AutoUpdate(this);
mAutoUpdate.sPackageName=getPackageName();
mAutoUpdate.checkUpdate();  
把这段移到UI线程之外执行吧

#2


android.os.NetworkOnMainThreadException
你这是在主线程中进行了网络操作,4.0以后是不允许在UI线程进行网络操作,所以能在2.3.3上运行,4.2上就直接无法启动了

#3


sagittarius1988

求实现方法.

#1


AutoUpdate mAutoUpdate = new AutoUpdate(this);
mAutoUpdate.sPackageName=getPackageName();
mAutoUpdate.checkUpdate();  
把这段移到UI线程之外执行吧

#2


android.os.NetworkOnMainThreadException
你这是在主线程中进行了网络操作,4.0以后是不允许在UI线程进行网络操作,所以能在2.3.3上运行,4.2上就直接无法启动了

#3


sagittarius1988

求实现方法.