2012-05-25 2 views
0

В настоящее время я пытаюсь получить API SoundCloud, работающий под PhoneGap/Cordova и Android. Вот код, который работает отлично в браузере:SoundCloud Stream в Phonegap под Android

var track_url = 'http://soundcloud.com/mymusic/mymusic' 
    ; 
    SC.get('/resolve', { 
     url : track_url 
    }, function(track) { 

     $("#stream").live("click", function() { 
      SC.stream("/tracks/" + track.id, function(sound) { 
       sound.play(); 
       $("#stop").live("click", function() { 
        sound.stop(); 
       }); 
      }); 
     }); 
    }); 

На моем устройстве Android отладки однако нет никакого звука. LogCat не дает никаких стандартных или кордовых ошибок. Кто-нибудь сталкивался с этим раньше?

Большое спасибо заранее

ответ

1

Ваш код выглядит хорошо, и я был в состоянии проверить это успешно на Android. Единственное, о чем я могу думать, это то, что вызов разрешения возвращает 404 или подобное. Вы пробовали проверить ошибку?

var track_url = 'http://soundcloud.com/your/track'; 

SC.initialize({ 
    client_id: 'YOUR_CLIENT_ID' 
}); 

SC.get('/resolve', { url: track_url }, function(track, error) { 
    if (error) { 
    alert("Error: " + error.message); 
    return; 
    } 

    // ... rest of your code 
}); 

Попробуйте это и посмотрите, получаете ли вы что-либо, если нет, оставьте комментарий.

+0

Hi Paul. Спасибо за помощь. Я включил ваше предупреждение об ошибке в код. SC.get не бросает никаких ошибок, и он дает мне тот же правильный track.id, что и в браузере. Я сузил его до SC.stream, который полностью неактивен при андроиде/PG. Он просто пропускает эту часть без ошибок или catch. Но моя Galaxy S2 (ICS) дает мне хромовую ошибку: 'D/chromium (28352): Неизвестная ошибка хрома: -6' – alx60531

+0

Обновление: я также пробовал эмулятор на старых версиях ОС. Я не получаю ошибку хрома, но предупреждения в SC.stream не срабатывают. – alx60531

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