Existe una aplicación que permite controlar Amarok desde un celular con Android.
La aplicación en cuestión se llama amarok2Adroid, se requiere instalar una aplicación en el celular y unos scripts en amarok.
Este script en cuestión tiene una falencia, no permite agregar música a la playlist desde el celular.
La solución: Modificar el archivo amarokfunc.js de los scripts de Amarok. Remplazar las funciones por estas dos nuevas funciones.
cmdCollectionPlayByTrackId = function(path){
trackId = parseInt(path.substring(path.lastIndexOf("/")+1));
trackURL = Amarok.Collection.query('SELECT rpath FROM urls LEFT JOIN tracks ON urls.id = tracks.url WHERE tracks.id = '+trackId+';');
trackURL2 = Amarok.Collection.query('SELECT lastmountpoint FROM devices LEFT JOIN (urls LEFT JOIN tracks ON urls.id = tracks.url) ON devices.id = urls.deviceid WHERE tracks.id = '+trackId+';');
Amarok.Playlist.addMedia(new QUrl('file://'+ trackURL2[0] + trackURL[0].substring(1)));
response = new HandlerResponse();
Amarok.Playlist.playByIndex(Amarok.Playlist.totalTrackCount()-1)
return response
}
cmdCollectionEnqueue = function(path) {
req_len = path.split("/").length;
req_splitted = path.split("/");
for(i = 2; i <= req_len; i++) {
trackId = req_splitted[i];
trackURL = Amarok.Collection.query('SELECT rpath FROM urls LEFT JOIN tracks ON urls.id = tracks.url WHERE tracks.id = '+trackId+';');
trackURL2 = Amarok.Collection.query('SELECT lastmountpoint FROM devices LEFT JOIN (urls LEFT JOIN tracks ON urls.id = tracks.url) ON devices.id = urls.deviceid WHERE tracks.id = '+trackId+';');
Amarok.Playlist.addMedia(new QUrl('file://'+ trackURL2[0] + trackURL[0].substring(1)));
}
response = new HandlerResponse();
return response;
}