android 铃音-一个播放铃音的Helloworld,手机上一运行就崩溃,请帮看看问题在哪?

问题描述

一个播放铃音的Helloworld,手机上一运行就崩溃,请帮看看问题在哪?

几乎是照抄网上文章的代码,想实际点击button1播放手机铃音,点button2停止,结果在在手机上测试,一点击,APP就崩溃关闭了,请问是哪里不对?

import java.io.IOException;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.RingtoneManager;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {
MyThread m;

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

    Button b1=(Button)findViewById(R.id.button1);
    Button b2=(Button)findViewById(R.id.button2);
    m=new MyThread(this);

    b1.setOnClickListener(new OnClickListener(){
        public void onClick(View v){
        m.start();
        }
    });

    b2.setOnClickListener(new OnClickListener(){
        public void onClick(View v){
        if (m.isAlive())
        m.StopAlarmRing();
        }
    });
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;

}

class MyThread extends Thread{
    MediaPlayer mMediaPlayer;
    Context mContext;

    public MyThread(Context context){
    mMediaPlayer=new MediaPlayer();
    this.mContext=context;
    }

    @Override
    public void run(){
    Uri alert=RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);

    try{
    mMediaPlayer.setDataSource(mContext,alert);
    final AudioManager audioManager=(AudioManager) getSystemService(Context.ACCOUNT_SERVICE);
    if (audioManager.getStreamVolume(AudioManager.STREAM_RING)!=0){
    mMediaPlayer.setAudioStreamType(AudioManager.STREAM_RING);
    mMediaPlayer.setLooping(true);
    try{
    mMediaPlayer.prepare();
    }catch(IllegalStateException e){
            e.printStackTrace();
            }
    }
    }catch(IOException e){
    e.printStackTrace();
    }
    mMediaPlayer.start();
    }

    private void StopAlarmRing(){
    mMediaPlayer.stop();
    }
}

}

解决方案

try{
mMediaPlayer.prepare();
}catch(IllegalStateException e){
e.printStackTrace();
}
}
注掉试试

时间: 2024-09-19 10:11:13

android 铃音-一个播放铃音的Helloworld,手机上一运行就崩溃,请帮看看问题在哪?的相关文章

android: 遇到了一个eclipse工程转到studio上的问题?求大神帮解决

问题描述 android: 遇到了一个eclipse工程转到studio上的问题?求大神帮解决 我在把项目由eclipse导到studio的时候遇到了一个问题,如下: Error:Execution failed for task ':app:transformClassesWithDexForDebug'. com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessExce

mobl-在phonegap build上构建的app在android手机上无法运行

问题描述 在phonegap build上构建的app在android手机上无法运行 用mobl语言开发的手机端web程序在电脑上浏览器里可正常运行,在phonegap build上构建的app,下载到android手机上无法运行,出现如下界面请各位大神帮助. 解决方案 phonegap主要打包html代码生成apk的,mobl是什么?是html没有?

webkit-请问android中怎么对获取手机上正在运行的浏览器所打开网页的URL

问题描述 请问android中怎么对获取手机上正在运行的浏览器所打开网页的URL 具体需求为 对浏览器打开的网页地址进行监听.控制,当发现是有问题的网址时如何让浏览器停止对该网页的访问(比如关闭当前标签等) 主要问题就是怎么获取当前浏览器所请求的url,监听接口是什么?,求大神告知,不甚感激 解决方案 对浏览器这个不太实现吧,因为 Android 下用户可用的浏览器太多了. 还是通过对网络的监控,有可实现性. 解决方案二: 激活自己为VPN,然后过滤, 因为资料比较少,因此建议查Google的安

robotium程序-Android robotium自动化测试程序 在实体手机上不运行

问题描述 Android robotium自动化测试程序 在实体手机上不运行 从官网上下载robotium 样例代码NotPad. 针对NotPad 写robotium自动测试程序能成功运行.但是我单独写Android程序,然后针对这个程序单独写的自动化程序就不能运行,代码无报错.

app-#安卓 自己写了一个可以连发数据的蓝牙APP可是运行时候崩溃了

问题描述 #安卓 自己写了一个可以连发数据的蓝牙APP可是运行时候崩溃了 本人菜鸟 先用Ontouch方法 + while循环 + thread休眠写了一个每隔100ms 按钮连续发送数据的蓝牙APP 但是在使用过程中 配对 以及连接蓝牙之后 可以发送大概5分钟 APP就崩溃了 崩溃是指:蓝牙还和我的手机连着 但是整个APP 按按钮没反应 也发送不了数据 但是其他菜单栏可以点开 关掉APP重开,APP就打不开了 只能关掉蓝牙设备 然后再打开APP 之后学习了handler用法 试着写了一段 整个

android-Android程序在有些手机上可以运行有些手机打开时就报错

问题描述 Android程序在有些手机上可以运行有些手机打开时就报错 有些人说是手机系统版本的问题,我的版本设置为 android:minSdkVersion=""8"" android:targetSdkVersion=""19"" />错误为:03-27 17:42:49.851: D/jdwp(18655): sendBufferedRequest : len=0x3303-27 17:42:50.544: D/d

一个JSP程序,上机出错,无法运行,还请高手帮忙改正。

问题描述 <%@pagelanguage="java"import="java.util.*"%><%@pagecontentType="text/html;charset=GB2312"%><html><head><title>第一个JSP实例</title></head><body><h1>第一个JSP实例</h1><

安卓开发,手机上可以运行,虚拟机不行

问题描述 解决方案 解决方案二:求各位大神帮忙解决方案三:初始化错误,无法加载SDK,返回了null值.从新建一个虚拟机试试.解决方案四:XQueuerSDK没关联上吧

手机上的阅读

移动互联网与日常生活密不可分,人们随时随地都在制造数据.获取数据.数据的一切问题在现在的移动互联网上似乎已经不再是问题.我们需要面对的是如何在数据海洋里寻找对自己真正有用的信息. 手机上产生的大数据需要通过重新组织,之后才能显现出有用的信息. 当然,大数据本身并不是问题.各个渠道随时随地道都可获得海量的数据;就连我们个人每天都会生产很大量的数据,那么如何使得成堆的数据具备其应有的价值呢?我想关键的问题是如何处理.分析这些数据,否则数据将只是一堆没有任何价值的一推数据. 稻草堆里寻针 数据处理.分