0

通知アプリを作成しようとしていますが、ボタンをクリックすると、通知がポップアップしている間にビープ音が鳴ります。

ボタンをクリックすると通知が表示されますが、実行時にサウンドでエラーが発生します。実行時に「エミュレーターが応答していません」というエラーが発生すると思います。

Android mediaplayer エラーが発生しています:

07-19 19:32:28.846: 私/StagefrightPlayer(110): setDataSource('android.resourse://com.example.status/2130968576') 07-19 19:32:28.846: E/MediaPlayer(198):エラー (1、-2147483648) 07-19 19:32:28.846: W/NotificationService(198): android.resourse://com.example.status/2130968576 07-19 19:32:28.846 のサウンドの読み込み中にエラーが発生しました: W /NotificationService(198): java.io.IOException: 準備に失敗しました.: status=0x1 07-19 19:32:28.846: W/NotificationService(198): android.media.MediaPlayer.prepare(Native Method) 07-19 で19:32:28.846: W/NotificationService(198): com.android.server.NotificationPlayer$CreationAndCompletionThread.run(NotificationPlayer.java:90) 07-19 19:32:28.976: D/dalvikvm(273): GC_CONCURRENT が解放されました701K、55% フリー 3028K/6599K、外部 2434K/2980K、一時停止 8ms+4ms

念のため、Java コードを次に示します。

package com.example.status;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.support.v4.app.NavUtils;

public class MainActivity extends Activity {

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

        Button b =  (Button) findViewById(R.id.button1);
        b.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                NotificationManager nm = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
                        Notification notify = new Notification(android.R.drawable.stat_notify_more, 
                                "This is important", System.currentTimeMillis());
                        Context context = MainActivity.this;
                        CharSequence title = "You have been notified";
                        CharSequence details = "Continue with what you are doing";
                        Intent intent = new Intent(context, MainActivity.class);
                        PendingIntent pending = PendingIntent.getActivity(context, 0, intent, 0);
                        notify.setLatestEventInfo(context,title,details,pending);
                        notify.sound = Uri.parse("android.resourse://com.example.status/" + R.raw.beep);

                        nm.notify(0, notify);





            }
        });
    }




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


}
4

2 に答える 2

0

sresourseを使用したスペルは、そのエラーが発生する理由です。

于 2012-07-19T21:01:12.893 に答える
0

コードには次のものがあります。

android.resourse://com.example.status/2130968576

「リソース」を「c」で綴ってみてください。

android.resource://com.example.status/2130968576
于 2012-07-19T20:35:39.747 に答える