在模拟器的工作,但手机不能正常工作在android系统? [英] Working in emulator but not working in phone in android?

查看:134
本文介绍了在模拟器的工作,但手机不能正常工作在android系统?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是新到Android,我在完成阶段创建一个应用程序。
但不幸的是我在Android手机上运行它的时候,但在Android模拟器完美地工作的一些错误得到提高...

下面是我的Java code:

包com.VRG;

 进口的java.util.ArrayList;
进口的java.util.List;
进口了java.util.Random;
进口java.util.Vector中;进口android.app.Activity;
进口android.app.AlertDialog;
进口android.content.DialogInterface;
进口android.content.Intent;进口android.media.MediaPlayer;
进口android.media.MediaPlayer.OnCompletionListener;
进口android.os.Bundle;
进口android.os.CountDownTimer;
进口android.util.Log;
进口android.view.KeyEvent;
进口android.view.View;
进口android.view.View.OnClickListener;
进口android.widget.Button;
进口android.widget.ImageView;
进口android.widget.TextView;
进口android.widget.Toast;公共类Animalsgame扩展活动实现OnClickListener {
    // INT答案= 0;
    按钮的声音;
    MediaPlayer的熔点;
    TextView的时间; //倒计时器
    ImageView的img_view1;
    ImageView的img_view2;
    ImageView的img_view3;
    ImageView的img_view4;
    私人ImageView的selectedImageView;
    静态INT索引= 0;
    静态INT索引1 = 0;
    静态INT noOfLapse;
    静态诠释计数;
    静态INT得分= 1;
    静态布尔isSoundPlay;
    CountDownTimer CountDownTimer;
    INT IDX;
    接下来的整数;    私人随机随机的;
    私人的ArrayList< MediaPlayer的>声音;
    私人的ArrayList< MediaPlayer的> tempSounds;
    //跟踪哪些正在播放的声音
    私人诠释soundSelectedIndex;    私人矢量matchImages = NULL;
    清单<整数GT;生成的;    //形象箱总数    私有静态最终诠释NO_IMAGE_BOXES = 4;    最终诠释[] = imageViews {R.id.img_view1,R.id.img_view2,R.id.img_view3,
            R.id.img_view4};的图像视图//阵列    INT [] = Animals_images {R.drawable.cow,R.drawable.lion,R.drawable.dog,
            R.drawable.sheep,R.drawable.elephant,R.drawable.camel,
            R.drawable.rhinos,R.drawable.horse,R.drawable.donkey,
            R.drawable.wolf}; //动物图像阵列    @覆盖
    公共无效的onCreate(捆绑savedInstanceState){
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.game);        时间=(TextView中)this.findViewById(R.id.time);        img_view1 =(ImageView的)this.findViewById(R.id.img_view1);
        img_view2 =(ImageView的)this.findViewById(R.id.img_view2);
        img_view3 =(ImageView的)this.findViewById(R.id.img_view3);
        img_view4 =(ImageView的)this.findViewById(R.id.img_view4);        img_view1.setOnClickListener(本);
        img_view2.setOnClickListener(本);
        img_view3.setOnClickListener(本);
        img_view4.setOnClickListener(本);        // 倒计时器
        声音=(按钮)this.findViewById(R.id.voice); //动物的声音        voice.setOnClickListener(本);        //初始化失效计数器
        noOfLapse = 0;
        isSoundPlay = TRUE;        随机=新的随机();        听起来=新的ArrayList< MediaPlayer的>();
        sounds.add(MediaPlayer.create(这一点,R.raw.cow));
        sounds.add(MediaPlayer.create(这一点,R.raw.lion));
        sounds.add(MediaPlayer.create(这一点,R.raw.dog));
        sounds.add(MediaPlayer.create(这一点,R.raw.sheep));
        sounds.add(MediaPlayer.create(这一点,R.raw.elephant));
        sounds.add(MediaPlayer.create(这一点,R.raw.camel));
        sounds.add(MediaPlayer.create(这一点,R.raw.rhino));
        sounds.add(MediaPlayer.create(这一点,R.raw.horse));
        sounds.add(MediaPlayer.create(这一点,R.raw.donkey));
        sounds.add(MediaPlayer.create(这一点,R.raw.wolf));        tempSounds =(ArrayList的< MediaPlayer的>)sounds.clone();        enableDisableImageView(假);    } // onCreate方法结束    公共无效setDuration(INT持续时间){    }    @覆盖
    公共无效的onClick(视图v){
        Log.i(声音,声键点击);
        enableDisableImageView(真);        如果(V的instanceof ImageView的){            算上++;
            // Toast.makeText(getApplicationContext(),错误的,
            // Toast.LENGTH_SHORT).show();
            enableDisableImageView(假);        }        如果(V == selectedImageView){
            Toast.makeText(getApplicationContext(),正确的!
                    Toast.LENGTH_SHORT).show();
            得分++;
            Log.i(11111,计数值:+分);
            Log.i(22222,计数值:+计数);
            enableDisableImageView(假);        }        如果(V == img_view1){            如果(熔点!= NULL){
                如果(mp.isPlaying()){
                    mp.stop();
                }
            }            time.setText();
            如果(CountDownTimer!= NULL){
                CountDownTimer.cancel();
            }
            enableDisableButton(真);
        }
        如果(V ==音){            //答案++;
            freezeButtonAndPlaySoundThenUnfreezeButton();
            loadImages();
            COUNTDOWN();
            // enableDisableButton(真);
        }        如果(V == img_view2){
            如果(熔点!= NULL){
                如果(mp.isPlaying()){
                    mp.stop();
                }
            }            enableDisableButton(真); //重新启用按钮
        }
        //如果其他(五==音){
        // loadImages();
        // COUNTDOWN();
        // enableDisableButton(假);
        //}        如果(V == img_view3){
            如果(熔点!= NULL){
                如果(mp.isPlaying()){
                    mp.stop();
                }
            }            enableDisableButton(真); //重新启用按钮
        }
        //如果其他(五==音){
        // loadImages();
        // COUNTDOWN();
        // enableDisableButton(假);
        //}        如果(V == img_view4){
            如果(熔点!= NULL){
                如果(mp.isPlaying()){
                    mp.stop();
                }
            }            enableDisableButton(真); //重新启用按钮
        }
        //如果其他(五==音){
        // loadImages();
        // COUNTDOWN();
        // enableDisableButton(假);
        //}        如果(计数→8){
            AlertDialog.Builder alertbox =新AlertDialog.Builder(本);
            setDuration(0);
            MP = MediaPlayer.create(这一点,R.raw.claps);
            如果(熔点!= NULL){
                如果(mp.isPlaying()){
                    mp.stop();
                }
            }
            mp.start();
            Toast.makeText(getApplicationContext(),你的分数:+的分数,
                    Toast.LENGTH_SHORT).show();
            //设置为显示该消息
            alertbox.setMessage(!游戏结束。++你的分数是:+
                    +分数++你想再次发挥)?;
            //设置正/ Yes按钮,并创建一个侦听器
            alertbox.setPositiveButton(是,
                    新DialogInterface.OnClickListener(){                        单击该按钮时//做一些事情
                        公共无效的onClick(DialogInterface为arg0,ARG1 INT){
                            如果(熔点!= NULL){
                                如果(mp.isPlaying()){
                                    mp.stop();
                                }
                            }
                            索引= 0;
                            索引1 = 0;
                            计数= 0;
                            得分= 1;
                            意图I =新意图(Animalsgame.this,
                                    Animalsgame.class);
                            startActivity(ⅰ);
                            完();
                        }
                    });            //设置了负/否按钮,创建一个侦听器
            alertbox.setNegativeButton(否,
                    新DialogInterface.OnClickListener(){                        单击该按钮时//做一些事情
                        公共无效的onClick(DialogInterface为arg0,ARG1 INT){
                            如果(熔点!= NULL){
                                如果(mp.isPlaying()){
                                    mp.stop();
                                }
                            }
                            计数= 0;
                            得分= 0;
                            完();
                            //意图I =新意图(VRGActivity2.this,
                            // VRGActivity1.class);
                            // startActivity(ⅰ);                        }
                    });            //显示框
            alertbox.show();
            enableDisableButton(假);
        }
    } //对点击的声音结束    私人无效COUNTDOWN(){        CountDownTimer =新CountDownTimer(6000,10000){            公共无效onTick(长millisUntilFinished){
                如果(isSoundPlay){
                    // freezeButtonAndPlaySoundThenUnfreezeButton();
                    isSoundPlay = FALSE;
                }
                time.setText(++ millisUntilFinished / 10000);            }            公共无效onFinish(){                // time.setText(UP);
                setDuration(0);
                // Toast.makeText(getApplicationContext(),时间高达,
                // Toast.LENGTH_SHORT).show();                isSoundPlay = TRUE;            } //在完成结束
        }。开始(); // countDown方法构造结束
    } // countDown方法的方法结束    公共无效enableDisableButton(布尔州){        voice.setEnabled(州);    } // enableDisableButton结束(布尔州)    公共无效enableDisableImageView(布尔州){        img_view1.setEnabled(州);
        img_view2.setEnabled(州);
        img_view3.setEnabled(州);
        img_view4.setEnabled(州);    } // enableDisableImageView结束(布尔州)    私人无效loadImages(){        随机RNG =新的随机(); //随机函数        如果(产生的== NULL){
            产生=新的ArrayList<整数GT;();
        }其他{
            generated.clear();
        }        Log.i(this.toString(),soundSelectedIndex+ soundSelectedIndex);
        generated.add(soundSelectedIndex);
        Log.i(this.toString(),初始阵列计数+ generated.size());
        布尔标志;        的for(int i = 0; I< NO_IMAGE_BOXES - 1;我++){
            Log.i(this.toString(),因为我+ I);
            标志=真实的;
            而(标志){
                接下来= rng.nextInt(9);
                指数=下一个;
                如果(!generated.contains(下)){                    Log.i(this.toString()生成的数组内容+下一个);
                    generated.add(下);
                    // ImageView的IV =(ImageView的)findViewById(imageViews [I]);
                    // iv.setImageResource(Animals_images [下一页]);
                    标志=标志!;                } //结束,如果                //突破;            } // While循环        } // for循环结束        //设置最后一个影像        //选择随机位置        INT POS = rng.nextInt(3);
        INT TEMP = generated.get(0);
        generated.set(0,generated.get(POS));
        generated.set(POS,温度);
        selectedImageView =(ImageView的)findViewById(imageViews [POS]);
        的for(int i = 0; I< generated.size();我++){
            Log.i(数组元素在列表中,+ generated.get(I));
            ImageView的IV =(ImageView的)findViewById(imageViews [I]);            iv.setImageResource(Animals_images [generated.get(ⅰ)]);        }    } // loadImages结束()    公共无效freezeButtonAndPlaySoundThenUnfreezeButton(){
        enableDisableButton(假); //禁用按钮
        INT randomInt = random.nextInt(tempSounds.size());        //设置选中的声音        Log.i(this.toString(),随机生成的声音+ randomInt);        // soundSelectedIndex = randomInt;
        MP = tempSounds.get(randomInt);        //如果(sounds.contains(tempSounds.get(randomInt))){        //从声音列表中的实际索引        soundSelectedIndex = sounds.indexOf(tempSounds.get(randomInt));        Log.i(this.toString(),freezeButtonAndPlaySoundThenUnfreezeButton
                + soundSelectedIndex);        //}        tempSounds.remove(randomInt);        mp.seekTo(0);
        mp.start();
        mp.setOnCompletionListener(新OnCompletionListener(){            @覆盖
            公共无效onCompletion(MediaPlayer的mpalmost){            } //对完井方式结束        });在点击监听方法集//结束    } // freezeButtonAndPlaySoundThenUnfreezeButton方法结束    @覆盖
    //前阵子pressed任务刷新
    公共无效onBack pressed(){        如果(熔点!= NULL){
            如果(mp.isPlaying()){
                mp.stop();
            } //结束,如果(mp.isPlaying())        } //如果结束(熔点!= NULL)    } //回pressed结束    @覆盖
    保护无效的onPause(){        super.onPause();    } //对pause方法结束    @覆盖
    保护无效调用onStart(){        super.onStart();    } //对启动方法结束    @覆盖
    保护无效onResume(){        super.onResume();    } //对简历的方法结束    @覆盖
    公共布尔的onkeydown(INT键code,KeyEvent的事件){        onBack pressed();
        完();        返回true;    } //方法的onkeydown结束    // //定义方法,选择匹配的图像
    //
    //无效chooseImages(){
    //
    //} //选择图像结束
    //
    // //定义方法获取随机值
    //
    // INT getRandom(int值){
    //
    //如果(随机== NULL){
    //
    //随机=新的随机();
    //
    //}
    //
    //返回random.nextInt(值);
    //
    //} // getRandom结束(int值)方法} // Animalsgame活动结束我现在用一个声音按钮,四个图像的意见。当我点击按钮的声音,声音得到提高,同时,imageviews都充满了图像。但是,在手机,当我运行它。这表明在某些情况下的错误,当我点击声音按钮。我的Java代码的一部分,在我的工作是上面提到的..我正的错误是**空指针厚望**和错误指出的是在freezeButtonAndPlaySoundThenUnfreezeButton。 PLZ帮我一个要紧的..!


解决方案

林猜测,你缺少的声音(MP变量上线394为空)。你不应该在0和INT randomInt = random.nextInt(tempSounds.size())随机的;因为没有元件和位置tempSounds.size()。它应该是(tempSounds.size() - 1)。

I am new to android, I am in a completing stage in creating one application. But I unfortunately some error gets raised when running it in the android phone, but working perfectly in android emulator...

Here is my java code:

package com.VRG;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Vector;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;

import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

public class Animalsgame extends Activity implements OnClickListener {
    // int answer=0;
    Button voice;
    MediaPlayer mp;
    TextView time;// count down timer
    ImageView img_view1;
    ImageView img_view2;
    ImageView img_view3;
    ImageView img_view4;
    private ImageView selectedImageView;
    static int index = 0;
    static int index1 = 0;
    static int noOfLapse;
    static int count;
    static int score = 1;
    static boolean isSoundPlay;
    CountDownTimer CountDownTimer;
    int idx;
    Integer next;

    private Random random;
    private ArrayList<MediaPlayer> sounds;
    private ArrayList<MediaPlayer> tempSounds;
    // Track the sound which is playing
    private int soundSelectedIndex;

    private Vector matchImages = null;
    List<Integer> generated;

    // Total number of image boxes

    private static final int NO_IMAGE_BOXES = 4;

    final int[] imageViews = { R.id.img_view1, R.id.img_view2, R.id.img_view3,
            R.id.img_view4 };// Array of image views

    int[] Animals_images = { R.drawable.cow, R.drawable.lion, R.drawable.dog,
            R.drawable.sheep, R.drawable.elephant, R.drawable.camel,
            R.drawable.rhinos, R.drawable.horse, R.drawable.donkey,
            R.drawable.wolf }; // Array of Animal images

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.game);

        time = (TextView) this.findViewById(R.id.time);

        img_view1 = (ImageView) this.findViewById(R.id.img_view1);
        img_view2 = (ImageView) this.findViewById(R.id.img_view2);
        img_view3 = (ImageView) this.findViewById(R.id.img_view3);
        img_view4 = (ImageView) this.findViewById(R.id.img_view4);

        img_view1.setOnClickListener(this);
        img_view2.setOnClickListener(this);
        img_view3.setOnClickListener(this);
        img_view4.setOnClickListener(this);

        // Count down timer
        voice = (Button) this.findViewById(R.id.voice);// Animals sounds

        voice.setOnClickListener(this);

        // Initialise Lapse counter
        noOfLapse = 0;
        isSoundPlay = true;

        random = new Random();

        sounds = new ArrayList<MediaPlayer>();
        sounds.add(MediaPlayer.create(this, R.raw.cow));
        sounds.add(MediaPlayer.create(this, R.raw.lion));
        sounds.add(MediaPlayer.create(this, R.raw.dog));
        sounds.add(MediaPlayer.create(this, R.raw.sheep));
        sounds.add(MediaPlayer.create(this, R.raw.elephant));
        sounds.add(MediaPlayer.create(this, R.raw.camel));
        sounds.add(MediaPlayer.create(this, R.raw.rhino));
        sounds.add(MediaPlayer.create(this, R.raw.horse));
        sounds.add(MediaPlayer.create(this, R.raw.donkey));
        sounds.add(MediaPlayer.create(this, R.raw.wolf));

        tempSounds = (ArrayList<MediaPlayer>) sounds.clone();

        enableDisableImageView(false);

    }// End of Oncreate method

    public void setDuration(int duration) {

    }

    @Override
    public void onClick(View v) {
        Log.i("voice", "voice button clicking");
        enableDisableImageView(true);

        if (v instanceof ImageView) {

            count++;
            // Toast.makeText(getApplicationContext(), "Wrong",
            // Toast.LENGTH_SHORT).show();
            enableDisableImageView(false);

        }

        if (v == selectedImageView) {
            Toast.makeText(getApplicationContext(), "Correct!",
                    Toast.LENGTH_SHORT).show();
            score++;
            Log.i("11111", "count value:" + score);
            Log.i("22222", "count value:" + count);
            enableDisableImageView(false);

        }

        if (v == img_view1) {

            if (mp != null) {
                if (mp.isPlaying()) {
                    mp.stop();
                }
            }

            time.setText("");
            if (CountDownTimer != null) {
                CountDownTimer.cancel();
            }
            enableDisableButton(true);
        }
        if (v == voice) {

            // answer++;
            freezeButtonAndPlaySoundThenUnfreezeButton();
            loadImages();
            countDown();
            // enableDisableButton(true);
        }

        if (v == img_view2) {
            if (mp != null) {
                if (mp.isPlaying()) {
                    mp.stop();
                }
            }

            enableDisableButton(true); // Re-enable buttons
        }
        // else if (v == voice) {
        // loadImages();
        // countDown();
        // enableDisableButton(false);
        // }

        if (v == img_view3) {
            if (mp != null) {
                if (mp.isPlaying()) {
                    mp.stop();
                }
            }

            enableDisableButton(true); // Re-enable buttons
        }
        // else if (v == voice) {
        // loadImages();
        // countDown();
        // enableDisableButton(false);
        // }

        if (v == img_view4) {
            if (mp != null) {
                if (mp.isPlaying()) {
                    mp.stop();
                }
            }

            enableDisableButton(true); // Re-enable buttons
        }
        // else if (v == voice) {
        // loadImages();
        // countDown();
        // enableDisableButton(false);
        // }

        if (count > 8) {
            AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
            setDuration(0);
            mp = MediaPlayer.create(this, R.raw.claps);
            if (mp != null) {
                if (mp.isPlaying()) {
                    mp.stop();
                }
            }
            mp.start();
            Toast.makeText(getApplicationContext(), "Your Score : " + score,
                    Toast.LENGTH_SHORT).show();
            // set the message to display
            alertbox.setMessage("Game Over..!" + " " + "Your score is:" + " "
                    + score + " " + " Do you want to play again?");
            // set a positive/yes button and create a listener
            alertbox.setPositiveButton("Yes",
                    new DialogInterface.OnClickListener() {

                        // do something when the button is clicked
                        public void onClick(DialogInterface arg0, int arg1) {
                            if (mp != null) {
                                if (mp.isPlaying()) {
                                    mp.stop();
                                }
                            }
                            index = 0;
                            index1 = 0;
                            count = 0;
                            score = 1;
                            Intent i = new Intent(Animalsgame.this,
                                    Animalsgame.class);
                            startActivity(i);
                            finish();
                        }
                    });

            // set a negative/no button and create a listener
            alertbox.setNegativeButton("No",
                    new DialogInterface.OnClickListener() {

                        // do something when the button is clicked
                        public void onClick(DialogInterface arg0, int arg1) {
                            if (mp != null) {
                                if (mp.isPlaying()) {
                                    mp.stop();
                                }
                            }
                            count = 0;
                            score = 0;
                            finish();
                            // Intent i = new Intent(VRGActivity2.this,
                            // VRGActivity1.class);
                            // startActivity(i);

                        }
                    });

            // display box
            alertbox.show();
            enableDisableButton(false);
        }
    }// End of voice on click

    private void countDown() {

        CountDownTimer = new CountDownTimer(6000, 10000) {

            public void onTick(long millisUntilFinished) {
                if (isSoundPlay) {
                    // freezeButtonAndPlaySoundThenUnfreezeButton();
                    isSoundPlay = false;
                }
                time.setText("" + "" + millisUntilFinished / 10000);

            }

            public void onFinish() {

                // time.setText("UP");
                setDuration(0);
                // Toast.makeText(getApplicationContext(), "Time Up",
                // Toast.LENGTH_SHORT).show();

                isSoundPlay = true;

            }// End of on finish
        }.start(); // End of countDown Constructor
    }// End of countDown method

    public void enableDisableButton(Boolean state) {

        voice.setEnabled(state);

    }// End of enableDisableButton(Boolean state)

    public void enableDisableImageView(Boolean state) {

        img_view1.setEnabled(state);
        img_view2.setEnabled(state);
        img_view3.setEnabled(state);
        img_view4.setEnabled(state);

    }// End of enableDisableImageView(Boolean state)

    private void loadImages() {

        Random rng = new Random(); // Random function

        if (generated == null) {
            generated = new ArrayList<Integer>();
        } else {
            generated.clear();
        }

        Log.i(this.toString(), "soundSelectedIndex " + soundSelectedIndex);
        generated.add(soundSelectedIndex);
        Log.i(this.toString(), "Initial Array Count " + generated.size());
        Boolean flag;

        for (int i = 0; i < NO_IMAGE_BOXES - 1; i++) {
            Log.i(this.toString(), "For i " + i);
            flag = true;
            while (flag) {
                next = rng.nextInt(9);
                index = next;
                if (!generated.contains(next)) {

                    Log.i(this.toString(), "Generated Array Contents " + next);
                    generated.add(next);
                    // ImageView iv = (ImageView) findViewById(imageViews[i]);
                    // iv.setImageResource(Animals_images[next]);
                    flag = !flag;

                }// End of if

                // break;

            }// While loop

        }// End of for loop

        // Set the last image

        // Choose the random position

        int pos = rng.nextInt(3);
        int temp = generated.get(0);
        generated.set(0, generated.get(pos));
        generated.set(pos, temp);
        selectedImageView = (ImageView) findViewById(imageViews[pos]);
        for (int i = 0; i < generated.size(); i++) {
            Log.i("Array Element in the list", "   " + generated.get(i));
            ImageView iv = (ImageView) findViewById(imageViews[i]);

            iv.setImageResource(Animals_images[generated.get(i)]);

        }

    }// End of loadImages()

    public void freezeButtonAndPlaySoundThenUnfreezeButton() {
        enableDisableButton(false); // disable buttons
        int randomInt = random.nextInt(tempSounds.size());

        // Set the selected sounds

        Log.i(this.toString(), "Random Generated Sounds " + randomInt);

        // soundSelectedIndex = randomInt;
        mp = tempSounds.get(randomInt);

        // if (sounds.contains(tempSounds.get(randomInt))){

        // Get the actual index from the sounds list

        soundSelectedIndex = sounds.indexOf(tempSounds.get(randomInt));

        Log.i(this.toString(), "freezeButtonAndPlaySoundThenUnfreezeButton "
                + soundSelectedIndex);

        // }

        tempSounds.remove(randomInt);

        mp.seekTo(0);
        mp.start();
        mp.setOnCompletionListener(new OnCompletionListener() {

            @Override
            public void onCompletion(MediaPlayer mpalmost) {

            }// End of on completion method

        });// End of set on click listener method

    }// End of freezeButtonAndPlaySoundThenUnfreezeButton method

    @Override
    // while back pressed the task is refreshed
    public void onBackPressed() {

        if (mp != null) {
            if (mp.isPlaying()) {
                mp.stop();
            }// End of if (mp.isPlaying())

        }// End of if (mp != null)

    }// End of back pressed

    @Override
    protected void onPause() {

        super.onPause();

    }// End of on pause method

    @Override
    protected void onStart() {

        super.onStart();

    }// End of on start method

    @Override
    protected void onResume() {

        super.onResume();

    }// End of on resume method

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {

        onBackPressed();
        finish();

        return true;

    }// End of onKeyDown method

    // // Define method for choosing matching image
    //
    // void chooseImages() {
    //
    // }// End of choosing images
    //
    // // Define method for getting random values
    //
    // int getRandom(int value) {
    //
    // if (random == null) {
    //
    // random = new Random();
    //
    // }
    //
    // return random.nextInt(value);
    //
    // }// End of getRandom(int value) method

}// End of Animalsgame activity



I am using one sound button, and four image views. When i click the sound button, the sound get raised and simultaneously, imageviews are filled with images. But in phone when i run it. it shows error in some instance, when i click the sound button. 

My part of java coding, in which i am working is mentioned above..  

The error which i am getting is **Null pointer expection** and the error pointed out is in freezeButtonAndPlaySoundThenUnfreezeButton. Plz do me a needful..!

解决方案

Im guessing that you are missing the sounds (mp variable is null on line 394). And you shouldn't random between 0 and int randomInt = random.nextInt(tempSounds.size()); because there is no element and location tempSounds.size(). It should be (tempSounds.size()-1).

这篇关于在模拟器的工作,但手机不能正常工作在android系统?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆