2013-05-01 2 views
0

Я пытаюсь установить правильный URI для пользовательского звука в приложении phonegap. Я попробовал несколько комбинаций, включая следующее, но я постоянно получаю Uri cannot be resolvedУстановить идентификатор URI для телефонного разговора

notif.sound = Uri.parse("android.resource://package_name/raw/notification/alarm.WAV"); 

    notif.sound = Uri.parse("android.resource://package_name/raw/notification/"); 

    notif.sound = Uri.parse("file://path/to/file/alarm.WAV"); 

Как установить Uri для звука при использовании PhoneGap

Подробнее

Я использую this tutorial в в конце которого объясняется, как добавлять уведомления из push-сообщения ....

String message = extras.getString("message"); 
    String title = extras.getString("title"); 
    Notification notif = new Notification(android.R.drawable.btn_star_big_on, message,    System.currentTimeMillis()); 
    notif.flags = Notification.FLAG_AUTO_CANCEL; 
    notif.defaults |= Notification.DEFAULT_SOUND; 
    notif.defaults |= Notification.DEFAULT_VIBRATE; 

    Intent notificationIntent = new Intent(context, TestSampleApp.class); 
    notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
    PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0); 

    notif.setLatestEventInfo(context, title, message, contentIntent); 
    String ns = Context.NOTIFICATION_SERVICE; 
    NotificationManager mNotificationManager = (NotificationManager) 
    context.getSystemService(ns); 
    mNotificationManager.notify(1, notif); 

Я думал, что удаление Notification.DEFAULT_SOUND; и добавление uri заставит его поместить собственный звук.

ответ

0

Если это код JavaScript, проблема связана с кодом и тем, как вы определили переменную/библиотеку Uri.

Если вы используете notification API, нет никакого способа, чтобы указать default "beep" sound (за прошивку исключения, но это потому, что не прозвучит звуковой сигнал на прошивке.)

Если вы пытаетесь воспроизвести конкретный звук, я думаю, вы должны быть с помощью media API. вы можете задать звук играть так:

function playAudio(url) { 
    // Play the audio file at url 
    var my_media = new Media(url, 
     // success callback 
     function() { 
      console.log("playAudio():Audio Success"); 
     }, 
     // error callback 
     function(err) { 
      console.log("playAudio():Audio Error: "+err); 
    }); 

    // Play audio 
    my_media.play(); 
} 

Посмотрите на «полный пример», чтобы увидеть, как настроить страницу HTML правильно.

+0

Это java, изнутри плагина push – maxum

+0

Вы пишете свой собственный плагин? Мне нужно увидеть больше кода, я действительно не знаю, что это за объект 'notif'. – MBillau

+0

извиняется за дополнительную информацию в вопросе – maxum

Смежные вопросы