- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的应用程序中,我使用 ToneGenerator 来播放简单的声音。当通过使用 6.0 编译应用程序来测试我的应用程序时,我的应用程序由于 ToneGenerator 初始化方法而随机崩溃。以下是异常(exception)情况。
java.lang.RuntimeException: Init failed
04-21 12:34:05.497 7166 7166 E MyApplication: at android.media.ToneGenerator.native_setup(Native Method)
04-21 12:34:05.497 7166 7166 E MyApplication: at android.media.ToneGenerator.<init>(ToneGenerator.java:746)
我正在以下面的方式使用音调发生器。
public ToneGenerator toneGenerator;
public void playSound() {
if (toneGenerator == null) {
toneGenerator = new ToneGenerator(AudioManager.STREAM_NOTIFICATION, 100);
}
toneGenerator.startTone(ToneGenerator.TONE_CDMA_ANSWER, 200);
}
public void releaseToneGenerator() {
if (toneGenerator != null) {
toneGenerator.release();
}
}
有人面临同样的问题吗?..以前我的应用程序运行在 4.4 上,我们没有观察到任何崩溃。在 6.0 应用程序崩溃
最佳答案
使用处理程序解决了这个问题。
private static void playTone(Context context, int mediaFileRawId) {
Log.d(TAG, "playTone");
try {
if (toneGenerator == null) {
toneGenerator = new ToneGenerator(AudioManager.STREAM_NOTIFICATION, 100);
}
toneGenerator.startTone(mediaFileRawId, 200);
Handler handler = new Handler(Looper.getMainLooper());
handler.postDelayed(new Runnable() {
@Override
public void run() {
if (toneGenerator != null) {
Log.d(TAG, "ToneGenerator released");
toneGenerator.release();
toneGenerator = null;
}
}
}, 200);
} catch (Exception e) {
Log.d(TAG, "Exception while playing sound:" + e);
}
}
关于android - ToneGenerator 在 android 6.0 中崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43515604/
我正在编写一个计时器应用程序,提供服务并每 30 秒发出一次蜂鸣声(实际上有一个下拉菜单可以更改时间)。 然而,当我让应用程序发出哔哔声时,哔哔声会持续很长时间并卡住应用程序,最终(大约 5 秒后)它
几天前,我收到了我发布的应用程序的崩溃日志。 错误来自ToneGenerator,我找不到问题。 在这里,我有一个倒数计时器,当计时器达到 0 时,应用会启动一个 ToneGenerator。 pri
我是安卓开发新手 我正在开发一个 Android 应用程序,它可以简单地改变音量并播放提示音“以预览当前音量” 我在 ToneGenerator 类中使用 startTone 来生成此蜂鸣声,如下所示
我反复调用 ToneGenerator.startTone() 发出短促的声音。但是在第一次调用时,它会阻塞很长时间。所以第一次爆发太长了。这是一个例子: 成员变量: private ToneGene
在我的应用程序中,我使用 ToneGenerator 来播放简单的声音。当通过使用 6.0 编译应用程序来测试我的应用程序时,我的应用程序由于 ToneGenerator 初始化方法而随机崩溃。以下是
我是一名优秀的程序员,十分优秀!