每次我尝试运行代码时,My Emulator都会崩溃

时间:2013-03-15 19:43:44

标签: android debugging crash emulation logcat

我在网上浏览了类似的主题,但没有一个有用。

我正在尝试执行单击按钮声音的SIMPLE任务。我努力工作了几个小时,试图让代码正确,一旦看起来它会起作用,它甚至都不会运行。

它说,“不幸的是,尝试已经停止了。”并且我的LogCat文件打开时有200多条错误消息没有任何意义。

你能查看我的代码并告诉我问题是什么吗?谢谢。

package com.example.attempt;

import android.app.Activity;
import android.content.Context;
import android.media.AudioManager;
import android.os.Bundle;
import android.view.SoundEffectConstants;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button=(Button) findViewById(R.id.muteButton);
        button.setOnClickListener(this);
    }

        AudioManager audioManager =
                (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);




    public void onClick(View v) {
        audioManager.playSoundEffect(SoundEffectConstants.CLICK);
    }
}

2 个答案:

答案 0 :(得分:5)

AudioManager方法中的onCreate audioManager实例初始化为:

   AudioManager audioManager;  //<<<< declare here...
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button=(Button) findViewById(R.id.muteButton);
        button.setOnClickListener(this);

         /// initialize here
        audioManager =
                (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
    }

答案 1 :(得分:1)

这个

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button button=(Button) findViewById(R.id.muteButton);
    button.setOnClickListener(this);
}

    AudioManager audioManager =
            (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);

将其更改为

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

 AudioManager audioManager =
                (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
        Button button=(Button) findViewById(R.id.muteButton);
        button.setOnClickListener(this);
    }
相关问题