Android应用程序在emulator中崩溃-日志为空

Android应用程序在emulator中崩溃-日志为空,android,Android,我对android完全陌生,而且几乎是一个Java新手 我有一个简单的应用程序,我正在构建它来掌握android开发环境的诀窍——还有点击事件等 应用程序加载后,我可以使用按钮处理程序更改文本字段中的文本。但是,当我导入location类并尝试执行简单的GPS调用时,应用程序崩溃 问题是,Eclipse错误控制台中的一切看起来都很好——而且我在android emulator DevTools中没有看到任何异常。我打开了logcat窗口,但是我没有在eclipse/代码中做任何事情来发送logc

我对android完全陌生,而且几乎是一个Java新手

我有一个简单的应用程序,我正在构建它来掌握android开发环境的诀窍——还有点击事件等

应用程序加载后,我可以使用按钮处理程序更改文本字段中的文本。但是,当我导入location类并尝试执行简单的GPS调用时,应用程序崩溃

问题是,Eclipse错误控制台中的一切看起来都很好——而且我在android emulator DevTools中没有看到任何异常。我打开了logcat窗口,但是我没有在eclipse/代码中做任何事情来发送logcat我需要做什么

有人能看出这有什么问题吗?有更好的故障排除方法吗

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.*;
import android.location.*;


public class locationDisplay extends Activity {

    private EditText text;
    private Location GPSLocation;
    double dblLat;
    double dblong;
    String strLat;


    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main); // bind the layout to the activity
        text = (EditText) findViewById(R.id.EditText01);
        text.setText("No button pressed");

    }

    // Handler for each button -- Button01 is when it crashes
    public void myClickHandler(View view) {

        switch (view.getId()) {
        case R.id.Button01: 
            dblLat = GPSLocation.getLatitude();
            strLat = Double.toString(dblLat);
            text.setText(strLat);
            break;
        case R.id.Button02:
            text.setText("Button 2 was clicked");
            break;
        case R.id.Button03:
            text.setText("Button 3 was clicked");
            break;
        }
    }

您的GPSLocation对象为空。您需要访问LocationService以获取当前位置。使用模拟器,您需要手动发送位置


您不需要编写任何东西来获取LogCat中的默认消息;当程序崩溃时,未捕获的异常报告应自动显示。然而,有时LogCat和您的仿真器彼此断开连接,消息就会完全消失。只需关闭Eclipse和emulator,重新启动它们,消息就会重新出现。判断链接是否已重新建立的一个简单方法是在模拟器启动期间。就像华丽字体中闪烁的ANDROID文本消失,带您进入锁屏一样,您应该会在LogCat上看到大约100行文本闪烁。如果这种情况没有发生,那么LogCat就不会收到它的消息

在Android中显示调试消息的方法是对日志语句使用Log.dsome名称,以便可以过滤LogCat消息,即此处的实际调试语句;。您经常会发现人们在他们的应用程序中使用静态final String LOG_标记,这样他们就可以确保他们的日志始终具有相同的标记,因此,过滤器从不遗漏消息


至于您在这里的实际代码,Rpond是对的,您从未初始化过GPSLocation对象。

有时LogCat会“忘记”您已经连接并运行了设备/模拟器。这似乎是在设备和模拟器同时联机,然后断开其中一个的连接之后发生的。如果您没有从LogCat获得任何信息,请转到窗口>显示视图>其他>设备,然后单击要记录的设备。

您肯定会在LogCat中看到异常。您不会在Eclipse错误控制台中看到任何内容。@mbaird-我打开了logcat,但没有错误。我读过一篇文章说启用mylyn插件可能会导致这种情况,但我没有安装该插件。知道为什么Logcat不工作了吗?我需要做些什么来启动它吗?