无法启动我的Android应用程序。“关闭虚拟机”错误

詹姆斯·扬特

我目前正在使用Eclipse做一个简单的界面,该界面允许用户插入其名称,然后将其定向到其他页面。

但是,由于一些奇怪的问题,我现在陷入困境。尽管它表明“关闭VM”,但我怀疑这是主要原因。

这是我的代码

    package com.ytl.test;

    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.LinearLayout;
    import android.widget.TextView;
    import com.ytl.test.MainActivity;

public class MainActivity extends Activity {


    private TextView tvName;
    private EditText Name;
    private Button btnConfirm = new Button(this) ;
    private String stringName = new String();
    AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        LinearLayout layout = new LinearLayout(this);
        layout.setOrientation(LinearLayout.VERTICAL);

        tvName = new TextView(this);
        tvName.setText("Please enter your name: ");
        Name = new EditText(this);
        Name.setHint("Your Name");
        btnConfirm = new Button(this);
        btnConfirm.setText("Confirm");

        btnConfirm.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                stringName = Name.getText().toString();
                if(stringName.isEmpty()){
                    alertDialog.setTitle("Error");
                    alertDialog.setMessage("Name cannot be left empty. Please insert your name");
                    alertDialog.setCancelable(false);
                    alertDialog.setPositiveButton("Ok",
                            new DialogInterface.OnClickListener() {

                                @Override
                                public void onClick(DialogInterface dialog,
                                        int which) { 
                                    Name.setFocusable(true);
                                    Name.setFocusableInTouchMode(true);
                                    Name.requestFocus();
                                }
                            });

                    alertDialog.show();
                    Name.requestFocus();
                }
                else{
                    StringBuffer sbName = new StringBuffer();
                    sbName.append(stringName);
                    Intent intNext = new Intent(MainActivity.this,MainPage.class);
                    intNext.putExtra("Name",stringName.toString()); // i.putExtra only allow for String

                    startActivity(intNext);
                }

            }
        });

        layout.addView(tvName);
        layout.addView(Name);
        layout.addView(btnConfirm);
        setContentView(layout);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

这是我的logcat

03-15 14:37:38.143: D/AndroidRuntime(7217): Shutting down VM
03-15 14:37:38.143: W/dalvikvm(7217): threadid=1: thread exiting with uncaught exception (group=0x55e04b20)
03-15 14:37:38.143: D/AndroidRuntime(7217): procName from cmdline: com.ytl.test
03-15 14:37:38.143: E/AndroidRuntime(7217): in writeCrashedAppName, pkgName :com.ytl.test
03-15 14:37:38.143: D/AndroidRuntime(7217): file written successfully with content: com.ytl.test StringBuffer : ;com.ytl.test
03-15 14:37:38.153: E/AndroidRuntime(7217): FATAL EXCEPTION: main
03-15 14:37:38.153: E/AndroidRuntime(7217): Process: com.ytl.test, PID: 7217
03-15 14:37:38.153: E/AndroidRuntime(7217): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.ytl.test/com.ytl.test.MainActivity}: java.lang.NullPointerException
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.app.ActivityThread.access$800(ActivityThread.java:135)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.os.Handler.dispatchMessage(Handler.java:102)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.os.Looper.loop(Looper.java:136)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.app.ActivityThread.main(ActivityThread.java:5021)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at java.lang.reflect.Method.invokeNative(Native Method)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at java.lang.reflect.Method.invoke(Method.java:515)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:827)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:643)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at dalvik.system.NativeStart.main(Native Method)
03-15 14:37:38.153: E/AndroidRuntime(7217): Caused by: java.lang.NullPointerException
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.content.ContextWrapper.getResources(ContextWrapper.java:89)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.view.ContextThemeWrapper.getResources(ContextThemeWrapper.java:78)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.view.View.<init>(View.java:3443)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.view.View.<init>(View.java:3510)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.widget.TextView.<init>(TextView.java:623)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.widget.Button.<init>(Button.java:107)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.widget.Button.<init>(Button.java:103)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.widget.Button.<init>(Button.java:99)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at com.ytl.test.MainActivity.<init>(MainActivity.java:22)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at java.lang.Class.newInstanceImpl(Native Method)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at java.lang.Class.newInstance(Class.java:1208)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.app.Instrumentation.newActivity(Instrumentation.java:1064)
03-15 14:37:38.153: E/AndroidRuntime(7217):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2112)
03-15 14:37:38.153: E/AndroidRuntime(7217):     ... 11 more
03-15 14:37:38.213: D/AndroidRuntime(7230): Shutting down VM
03-15 14:37:38.213: W/dalvikvm(7230): threadid=1: thread exiting with uncaught exception (group=0x55e04b20)

在此先感谢您的帮助

更新我的XML文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.ytl.test"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="19"
        android:targetSdkVersion="21" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <service android:name=".BackgroundService" >
        </service>

        <activity
            android:name=".MainPage"
            android:label="@string/title_activity_main_page" >
        </activity>
    </application>

</manifest>
湿眶客

据我所知,问题出在这两行的第一行(尽管如果允许执行第二行也会导致相同的异常)...

private Button btnConfirm = new Button(this) ;
...
AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);

...您不能this在的主体中使用,Activity因为Activity在该阶段尚未完全实例化,this它将为null。

更改为...

private Button btnConfirm;
...
AlertDialog.Builder alertDialog;

无论如何,您都在实例化您btnConfirmonCreate(...)方法,因此您所要做的就是添加一行,例如...

alertDialog = new AlertDialog.Builder(this);

...也在您的onCreate(...)方法中的某个位置

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法启动我的Android应用程序。“关闭VM”错误

来自分类Dev

当我尝试访问应用程序时出现错误:“ Smalltalk / V”“虚拟机堆栈溢出”

来自分类Dev

Openstack热与Ansible。虚拟机启动和应用程序部署

来自分类Dev

在应用程序之间共享虚拟机

来自分类Dev

Android:关闭我的应用程序后启动我的服务

来自分类Dev

Android:关闭我的应用程序后启动我的服务

来自分类Dev

暂停与 关闭我的虚拟机

来自分类Dev

VirtualBox无法启动虚拟机

来自分类Dev

无法启动Andyroid虚拟机

来自分类Dev

无法启动虚拟机 VM

来自分类Dev

在虚拟机中启动我的内核?

来自分类Dev

错误关闭应用程序以启动Android服务

来自分类Dev

由于虚拟机管理程序未运行,因此无法启动虚拟机,这是虚拟机在vcenter服务器中运行

来自分类Dev

当我在API 30 Android虚拟机上运行Android应用程序时崩溃

来自分类Dev

错误:无法创建Java虚拟机

来自分类Dev

我的应用程序服务是否与其他人的应用程序服务共享虚拟机/外发IP?

来自分类Dev

在容器中运行 Spring Boot 应用程序?还是虚拟机?还是虚拟机内的容器?

来自分类Dev

无法启动Mac OSX 10.9虚拟机(虚拟盒)

来自分类Dev

在启动我的Android应用程序时出现错误

来自分类Dev

qemu kvm-安装xen虚拟机管理程序后无法启动VM

来自分类Dev

Hyper-v无法启动任何虚拟机-指定了无效的处理程序

来自分类Dev

GPU会使虚拟机中的应用程序更快吗?

来自分类Dev

有什么方法可以在应用程序内部的虚拟机中运行Linux?

来自分类Dev

如何分析在KVM guest虚拟机中运行的应用程序

来自分类Dev

在Windows Azure虚拟机VM上安装FTP应用程序FileZilla Server

来自分类Dev

.NET应用程序使用在Linux(虚拟机)上运行的Redis数据库

来自分类Dev

虚拟机在打开应用程序时出现问题

来自分类Dev

如何从互联网连接虚拟机中的快速应用程序?

来自分类Dev

ART虚拟机将如何影响现有应用程序?

Related 相关文章

  1. 1

    无法启动我的Android应用程序。“关闭VM”错误

  2. 2

    当我尝试访问应用程序时出现错误:“ Smalltalk / V”“虚拟机堆栈溢出”

  3. 3

    Openstack热与Ansible。虚拟机启动和应用程序部署

  4. 4

    在应用程序之间共享虚拟机

  5. 5

    Android:关闭我的应用程序后启动我的服务

  6. 6

    Android:关闭我的应用程序后启动我的服务

  7. 7

    暂停与 关闭我的虚拟机

  8. 8

    VirtualBox无法启动虚拟机

  9. 9

    无法启动Andyroid虚拟机

  10. 10

    无法启动虚拟机 VM

  11. 11

    在虚拟机中启动我的内核?

  12. 12

    错误关闭应用程序以启动Android服务

  13. 13

    由于虚拟机管理程序未运行,因此无法启动虚拟机,这是虚拟机在vcenter服务器中运行

  14. 14

    当我在API 30 Android虚拟机上运行Android应用程序时崩溃

  15. 15

    错误:无法创建Java虚拟机

  16. 16

    我的应用程序服务是否与其他人的应用程序服务共享虚拟机/外发IP?

  17. 17

    在容器中运行 Spring Boot 应用程序?还是虚拟机?还是虚拟机内的容器?

  18. 18

    无法启动Mac OSX 10.9虚拟机(虚拟盒)

  19. 19

    在启动我的Android应用程序时出现错误

  20. 20

    qemu kvm-安装xen虚拟机管理程序后无法启动VM

  21. 21

    Hyper-v无法启动任何虚拟机-指定了无效的处理程序

  22. 22

    GPU会使虚拟机中的应用程序更快吗?

  23. 23

    有什么方法可以在应用程序内部的虚拟机中运行Linux?

  24. 24

    如何分析在KVM guest虚拟机中运行的应用程序

  25. 25

    在Windows Azure虚拟机VM上安装FTP应用程序FileZilla Server

  26. 26

    .NET应用程序使用在Linux(虚拟机)上运行的Redis数据库

  27. 27

    虚拟机在打开应用程序时出现问题

  28. 28

    如何从互联网连接虚拟机中的快速应用程序?

  29. 29

    ART虚拟机将如何影响现有应用程序?

热门标签

归档