Giter Club home page Giter Club logo

cordova-plugin-playerhater's People

Contributors

bkammin avatar kbaichoo avatar toontoet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cordova-plugin-playerhater's Issues

PlayerHaterPlugin error: invalid json

Can you please tell me the correct json input format of window.audioplayer.playstream().

Now its,
window.audioplayer.playstream( successCallback,
failureCallback,
{
android: "http://fm939.wnyc.org/wnycfm-app.aac",
ios: "http://fm939.wnyc.org/wnycfm-app.aac"}
},
{
"title": "Cuomo; NJ Candidates; and Candy Etiquette",
"artist": "The Brian Lehrer Show",
"image": {
"url": "https://media2.wnyc.org/i/300/300/l/80/1/governor_andrew_cuomo.jpg"
},
"imageThumbnail": {
"url": "https://media2.wnyc.org/i/60/60/l/80/1/governor_andrew_cuomo.jpg"
},
"name": "WNYC 93.9 FM",
"description": "News, Culture & Talk"
},
extra
); @wnycdigital
@CIGEO

Build fails for Android

cordova-build/platforms/android/src/org/prx/playerhater/util/Config.java:24: error: package org.prx.android.playerhater does not exist
[javac] import org.prx.android.playerhater.R;

In iOS 8 playfile method closes app after while

I have used this simple code to play song from remote, succeed in iPad 2 iOS 7.1 and in iPad air iOS 8 it send 2 success callback and loading shown in status bar, then app close (when media start callback fire).

And other thing is about readme, playfile method arguments are success, error, url, info, position, extra but it shows in wrong order.

window.audioplayer.playfile(function() {
    console.log("success");
}, function() {
    console.log("fail");
}, "http://www.podtrac.com/pts/redirect.mp3/audio.wnyc.org/moneytalking/moneytalking20141031pod.mp3", {
    'title': 'Title',
    'artist': 'artist',
    "imageThumbnail": {
        "url": "https://media2.wnyc.org/i/60/60/l/80/1/governor_andrew_cuomo.jpg"
    }
},0 , {});

Player crashes on lollipop / android 5+. Also in WNYC app

Hi,
When using the plugin on Android lollipop devices the playing-notification disappears right after the stream has started. If you start another stream the app will crash. Both in the WYNC and a custom app I'm testing the pluging with.

build problem

[aapt] C:\Users\Mohamed\Desktop\test\platforms\android\ant-build\AndroidMan
ifest.xml:13: error: Error: No resource found that matches the given name (at 'r
esource' with value '@xml/playerhater').

BUILD FAILED
E:\Web\Prog\android\a\adt-bundle-windows-x86_64-20140702\sdk\tools\ant\build.xml
:653: The following error occurred while executing this line:
E:\Web\Prog\android\a\adt-bundle-windows-x86_64-20140702\sdk\tools\ant\build.xml
:698: null returned: 1

Total time: 2 seconds

[aapt]

C:\Users\Mohamed\Desktop\test\platforms\android\cordova\node_modules\q\q.js:126
throw e;
^
Error code 1 for command: cmd with args: /s,/c,ant,debug,-f,C:\Users\Mohamed\Des
ktop\test\platforms\android\build.xml,-Dout.dir=ant-build,-Dgen.absolute.dir=ant
-gen

Error: C:\Users\Mohamed\Desktop\test\platforms\android\cordova\build.bat: Comman
d failed with exit code 8
at ChildProcess.whenDone (C:\Users\Mohamed\AppData\Roaming\npm\node_modules
phonegap\node_modules\cordova\node_modules\cordova-lib\src\cordova\superspawn.js
:135:23)
at ChildProcess.emit (events.js:98:17)
at maybeClose (child_process.js:756:16)
at Process.ChildProcess._handle.onexit (child_process.js:823:5)

Bug on documentation

The correct order for parameters in the playfile function is:
success, error, url, info, position, extra
In the README, it is showing:
success, error, url, position, info, extra
This caused a json error during the android execution.

build problem

hi,
when I'm trying to build it on new cordova for android platform it get those error:
\platforms\android\src\org\prx\playerhater\util\Config.java:24: error: cannot find symbol
import org.prx.playerhater.R;
^
symbol: class R
location: package org.prx.playerhater
\platforms\android\src\org\prx\playerhater\plugins\ExpandableNotificationPlugin.java:24: error: cannot find symbol
import org.prx.playerhater.R;
^
symbol: class R
location: package org.prx.playerhater
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:30: error: cannot find symbol
import org.prx.playerhater.R;
^
symbol: class R
location: package org.prx.playerhater
\platforms\android\src\org\prx\playerhater\util\Log.java:18: error: cannot find symbol
import org.prx.playerhater.BuildConfig;
^
symbol: class BuildConfig
location: package org.prx.playerhater
\platforms\android\src\org\prx\playerhater\util\Config.java:85: error: package R does not exist
R.xml.zzz_ph_config_defaults);
^
\platforms\android\src\org\prx\playerhater\ipc\PlayerHaterServer.java:29: error: PlayerHaterServer is not abstract and does not override abstract method enqueueAtP
int) in IPlayerHaterServer
public class PlayerHaterServer extends IPlayerHaterServer.Stub {
^
\platforms\android\src\org\prx\playerhater\ipc\PlayerHaterServer.java:93: error: method does not override or implement a method from a supertype
@OverRide
^
\platforms\android\src\org\prx\playerhater\ipc\PlayerHaterServer.java:103: error: method does not override or implement a method from a supertype
@OverRide
^
\platforms\android\src\org\prx\playerhater\ipc\PlayerHaterServer.java:108: error: method does not override or implement a method from a supertype
@OverRide
^
\platforms\android\src\org\prx\playerhater\ipc\ServerPlayerHater.java:82: error: method play in interface IPlayerHaterServer cannot be applied to given types;
return mServer.play(SongHost.getTag(song), Songs.toBundle(song), 0);
^
required: int,int
found: int,Bundle,int
reason: actual and formal argument lists differ in length
\platforms\android\src\org\prx\playerhater\ipc\ServerPlayerHater.java:92: error: method play in interface IPlayerHaterServer cannot be applied to given types;
return mServer.play(SongHost.getTag(song), Songs.toBundle(song), startTime);
^
required: int,int
found: int,Bundle,int
reason: actual and formal argument lists differ in length
\platforms\android\src\org\prx\playerhater\ipc\ServerPlayerHater.java:112: error: method enqueue in interface IPlayerHaterServer cannot be applied to given types;
return mServer.enqueue(SongHost.getTag(song), Songs.toBundle(song));
^
required: int
found: int,Bundle
reason: actual and formal argument lists differ in length
\platforms\android\src\org\prx\playerhater\ipc\ServerPlayerHater.java:122: error: method enqueueAtPosition in interface IPlayerHaterServer cannot be applied to giv

                mServer.enqueueAtPosition(position, SongHost.getTag(song), Songs.toBundle(song));
                       ^

required: int,int
found: int,int,Bundle
reason: actual and formal argument lists differ in length
\platforms\android\src\org\prx\playerhater\plugins\NotificationPlugin.java:79: error: cannot find symbol
int closeResId = activityRes.getIdentifier("zzz_ph_ic_notification", "drawable", cordova.getActivity().getPackageName());
^
symbol: variable cordova
location: class NotificationPlugin
\platforms\android\src\org\prx\playerhater\plugins\NotificationPlugin.java:79: error: cannot find symbol
int closeResId = activityRes.getIdentifier("zzz_ph_ic_notification", "drawable", cordova.getActivity().getPackageName());
^
symbol: variable activityRes
location: class NotificationPlugin
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:52: error: package R does not exist
setTextViewText(R.id.zzz_ph_notification_title, title);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:58: error: package R does not exist
setTextViewText(R.id.zzz_ph_notification_text, artist);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:65: error: package R does not exist
setImageViewUri(R.id.zzz_ph_notification_image, mNotificationImageUrl);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:76: error: package R does not exist
setImageViewResource(R.id.zzz_ph_play_pause_button,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:77: error: package R does not exist
R.drawable.zzz_ph_bt_play);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:82: error: package R does not exist
setImageViewResource(R.id.zzz_ph_play_pause_button,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:83: error: package R does not exist
R.drawable.zzz_ph_bt_pause);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:91: error: package R does not exist
setViewEnabled(R.id.zzz_ph_skip_button, false);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:93: error: package R does not exist
setViewEnabled(R.id.zzz_ph_skip_button, true);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:97: error: package R does not exist
setViewEnabled(R.id.zzz_ph_back_button, false);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:99: error: package R does not exist
setViewEnabled(R.id.zzz_ph_back_button, true);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:123: error: package R does not exist
mNotificationView.setTextViewText(R.id.zzz_ph_notification_title,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:125: error: package R does not exist
mNotificationView.setTextViewText(R.id.zzz_ph_notification_text,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:128: error: package R does not exist
setImageViewUri(R.id.zzz_ph_notification_image,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:141: error: package R does not exist
view.setOnClickPendingIntent(R.id.zzz_ph_skip_button,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:143: error: package R does not exist
view.setOnClickPendingIntent(R.id.zzz_ph_play_pause_button,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:145: error: package R does not exist
view.setOnClickPendingIntent(R.id.zzz_ph_stop_button,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:147: error: package R does not exist
view.setOnClickPendingIntent(R.id.zzz_ph_back_button,
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:153: error: package R does not exist
R.layout.zzz_ph_hc_notification);
^
\platforms\android\src\org\prx\playerhater\plugins\TouchableNotificationPlugin.java:171: error: package R does not exist
.setSmallIcon(R.drawable.zzz_ph_ic_notification)
^
\platforms\android\src\org\prx\playerhater\plugins\ExpandableNotificationPlugin.java:43: error: package R does not exist
R.layout.zzz_ph_jbb_notification);
^
\platforms\android\src\org\prx\playerhater\plugins\ExpandableNotificationPlugin.java:45: error: package R does not exist
mExpandedView.setTextViewText(R.id.zzz_ph_notification_title,
^
\platforms\android\src\org\prx\playerhater\plugins\ExpandableNotificationPlugin.java:47: error: package R does not exist
mExpandedView.setTextViewText(R.id.zzz_ph_notification_text,
^
\platforms\android\src\org\prx\playerhater\plugins\ExpandableNotificationPlugin.java:49: error: package R does not exist
mExpandedView.setImageViewUri(R.id.zzz_ph_notification_image,

iOS Build Fails

In XCode, the build error is:
'Reachability.h' not found in 'ReachabilityManager.h'

[iOS] BUILD FAILED

Log of error:
/Users/juliano/Workspace/app/platforms/ios/MyApp/Plugins/org.nypr.cordova.playerhaterplugin/ReachabilityManager.h:10:9: fatal error: 'Reachability.h' file not found #import "Reachability.h"

Can't make it work

Hi there, I'm trying to make this plugin work on cordova, building for android, and testing on android 5.0.1.
I resolved compilation errors based on some other issues already closed, and build is successful.
My testing code uses the code defined in this repository usage section, within deviceready function, :

onDeviceReady: function() {
app.receivedEvent('deviceready');
},
receivedEvent: function(id) {
var parentElement = document.getElementById(id);
var listeningElement = parentElement.querySelector('.listening');
var receivedElement = parentElement.querySelector('.received');
listeningElement.setAttribute('style', 'display:none;');
receivedElement.setAttribute('style', 'display:block;');
console.log('Received Event: ' + id);

    window.audioplayer.configure( successCallback, failureCallback);
    window.audioplayer.playstream( successCallback, failureCallback,
        // stream urls to play on android/ios
        {
            android: "http://fm939.wnyc.org/wnycfm-app.aac",
            ios: "http://fm939.wnyc.org/wnycfm-app.aac"
        },
        // metadata used for iOS lock screen, Android 'Now Playing' notification
        {
            "title": "Cuomo; NJ Candidates; and Candy Etiquette",
            "artist": "The Brian Lehrer Show",
            "image": {
            "url": "https://media2.wnyc.org/i/300/300/l/80/1/governor_andrew_cuomo.jpg"
        },
            "imageThumbnail": {
            "url": "https://media2.wnyc.org/i/60/60/l/80/1/governor_andrew_cuomo.jpg"
        },
            "name": "WNYC 93.9 FM",
            "description": "News, Culture & Talk"
        },
        // javascript-specific json represenation of audio to be played, which will be passed back to
        // javascript via successCallback when a stream is launched from a local notification (eg, the alarm clock
        extra
    );
}

Application loads on android but it does nothing, no sound nor notification message.
Can you help me?

iOS 10.3 updates?

I noticed lock screen controls (play/skip/backward) are not working on my iPad Mini (iOS 10.3).

How can I help debug this?

App Crash

I create a Test App and a fix the problem in all packages with suffix .R and .BuildConfig but when a build my app and install in my device always crash.... I use this code:

This is my js/app.js

function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}

function onDeviceReady() {

window.audioplayer.playfile(successCallback, failureCallback, "http://www.podtrac.com/pts/redirect.mp3/audio.wnyc.org/moneytalking/moneytalking20141031pod.mp3", {
    "title": "Test Radio",
    "artist": "You Know",
    "image": {
        "url": "http://www.jesusfreakhideout.com/cdreviews/covers/seasonone.jpg"
    },
    "imageThumbnail": {
        "url": "https://media2.wnyc.org/i/60/60/l/80/1/governor_andrew_cuomo.jpg"
    }
}, 0, {});
window.audioplayer.configure(successCallback, failureCallback);

}
// callback method
var successCallback = function(result) {
console.log('audio callback ' + JSON.stringify(result));
if (result.type === 'progress') {
console.log('progress/duration/available - ' + result.progress + '/' + result.duration + '/' + result.available); // available not currently supported
} else if (result.type === 'state') {
console.log('status - ' + result.state + '/' + result.description);
} else if (result.type === 'error') {
console.log('error - ' + result.reason);
} else if (result.type === 'current') {
console.log('current audio ' + JSON.stringify(result.audio));
} else if (result.type === 'next') {
console.log('skip to next audio track'); // typically fired by remote control/lock screen controls
} else if (result.type === 'previous') {
console.log('skip to previous track'); // typically fired by remote/control/lock screen controls
} else {
console.log('AudioCallback unhandled type (' + result.type + ')');
}
};
var failureCallback = function() {
var elText;
elText = "Audio player failed";
if (window.lang === "fa") {
elText = "Reprodução falhou";
}
return console.log(elText);
};

Player throws exception when playing file

When I try to play a song my app immediately quits. I've pulled this from the log file:

D/AndroidRuntime(23217): Shutting down VM
E/AndroidRuntime(23217): FATAL EXCEPTION: main
E/AndroidRuntime(23217): Process: com.ionicframework.playerhater371470, PID: 23217
E/AndroidRuntime(23217): java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Boolean.booleanValue()' on a null object reference
E/AndroidRuntime(23217):    at org.prx.playerhater.wrappers.ThreadsafePlayerHater.seekTo(ThreadsafePlayerHater.java:134)
E/AndroidRuntime(23217):    at org.prx.playerhater.ipc.PlayerHaterServer.seekTo(PlayerHaterServer.java:100)
E/AndroidRuntime(23217):    at org.prx.playerhater.ipc.ServerPlayerHater.seekTo(ServerPlayerHater.java:101)
E/AndroidRuntime(23217):    at org.prx.playerhater.wrappers.BoundPlayerHater$3.onServiceConnected(BoundPlayerHater.java:210)
E/AndroidRuntime(23217):    at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1208)
E/AndroidRuntime(23217):    at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1225)
E/AndroidRuntime(23217):    at android.os.Handler.handleCallback(Handler.java:739)
E/AndroidRuntime(23217):    at android.os.Handler.dispatchMessage(Handler.java:95)
E/AndroidRuntime(23217):    at android.os.Looper.loop(Looper.java:135)
E/AndroidRuntime(23217):    at android.app.ActivityThread.main(ActivityThread.java:5254)
E/AndroidRuntime(23217):    at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime(23217):    at java.lang.reflect.Method.invoke(Method.java:372)
E/AndroidRuntime(23217):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
E/AndroidRuntime(23217):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
I/Process (23217): Sending signal. PID: 23217 SIG: 9
W/ActivityManager(  747):   Force finishing activity 1 com.ionicframework.playerhater371470/.MainActivity
I/WindowState(  747): WIN DEATH: Window{19bba035 u0 com.ionicframework.playerhater371470/com.ionicframework.playerhater371470.MainActivity}
I/WindowState(  747): WIN DEATH: Window{bbaae3b u0 com.ionicframework.playerhater371470/com.ionicframework.playerhater371470.MainActivity}
W/ActivityManager(  747): Exception thrown during pause
W/ActivityManager(  747): android.os.DeadObjectException
W/ActivityManager(  747):   at android.os.BinderProxy.transactNative(Native Method)
W/ActivityManager(  747):   at android.os.BinderProxy.transact(Binder.java:496)
W/ActivityManager(  747):   at android.app.ApplicationThreadProxy.schedulePauseActivity(ApplicationThreadNative.java:704)
W/ActivityManager(  747):   at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:825)
W/ActivityManager(  747):   at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2726)
W/ActivityManager(  747):   at com.android.server.am.ActivityStack.finishTopRunningActivityLocked(ActivityStack.java:2583)
W/ActivityManager(  747):   at com.android.server.am.ActivityStackSupervisor.finishTopRunningActivityLocked(ActivityStackSupervisor.java:2497)
W/ActivityManager(  747):   at com.android.server.am.ActivityManagerService.handleAppCrashLocked(ActivityManagerService.java:11500)
W/ActivityManager(  747):   at com.android.server.am.ActivityManagerService.makeAppCrashingLocked(ActivityManagerService.java:11397)
W/ActivityManager(  747):   at com.android.server.am.ActivityManagerService.crashApplication(ActivityManagerService.java:12081)
W/ActivityManager(  747):   at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:11592)
W/ActivityManager(  747):   at com.android.server.am.ActivityManagerService.handleApplicationCrash(ActivityManagerService.java:11574)
W/ActivityManager(  747):   at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:1406)
W/ActivityManager(  747):   at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2208)
W/ActivityManager(  747):   at android.os.Binder.execTransact(Binder.java:446)
E/lowmemorykiller(  172): Error writing /proc/23217/oom_score_adj; errno=22
I/ActivityManager(  747): Process com.ionicframework.playerhater371470 (pid 23217) has died

I'm using a Nexus 5 running 5.1. Not really sure where to go from here.

'R' not found at time of build app

I got following error at time of build applicaiton.

error: package org.prx.android.playerhater does not exist

and

error: package org.apache.http.client does not exist

I think in your code you missed some packages.

Please guide.

Cannot get it to read from project directory

I'm trying to play an mp3 file that is located in the www folder, but can't get it to work [in Android].
If I play it from a internet url, it works perfectly, but locally it just doesn't work:

This works:

window.audioplayer.playfile( 
      successCallback,  
      function(r){console.log(r);},  
      "http://www.tonycuffe.com/mp3/tailtoddle_lo.mp3",  
      {"title": "Test"},
      0, {});

This does not:

window.audioplayer.playfile( 
      successCallback,  
      function(r){console.log(r);},  
      "file:///android_asset/www/u.mp3",  
      {"title": "The Myth"},
      0, {});

I downloaded the file and I'm testing with it to make sure it's not a problem with the file.

Failed to fetch plugin

can somebody help me with this?

cordova plugin add https://github.com/wnyc/cordova-plugin-playerhater.git
Error: Failed to fetch plugin https://github.com/wnyc/cordova-plugin-playerhater.git via registry.
Probably this is either a connection problem, or plugin spec is incorrect.
Check your connection and plugin name/version/URL.
Error: cmd: Command failed with exit code 4294963228 Error output:
npm ERR! addLocal Could not install C:\Users\di3\AppData\Local\Temp\npm-18380-dc0e7953\git-cache-3c29d384\256e8f6dc52470e3578a2a1ffa8d3645ceb48763
npm ERR! code EISDIR
npm ERR! errno -4068
npm ERR! syscall read
npm ERR! eisdir EISDIR: illegal operation on a directory, read
npm ERR! eisdir This is most likely not a problem with npm itself
npm ERR! eisdir and is related to npm not being able to find a package.json in
npm ERR! eisdir a package you are trying to install.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\di3\AppData\Roaming\npm-cache\_logs\2017-07-26T09_28_17_782Z-debug.log
"dependencies": {
        "@angular/common": "4.3.1",
        "@angular/compiler": "4.3.1",
        "@angular/compiler-cli": "4.3.1",
        "@angular/core": "4.3.1",
        "@angular/forms": "4.3.1",
        "@angular/http": "4.3.1",
        "@angular/platform-browser": "4.3.1",
        "@angular/platform-browser-dynamic": "4.3.1",
        "@angular/platform-server": "4.3.1",
        "@ionic-native/core": "4.1.0",
        "@ionic-native/geolocation": "^4.1.0",
        "@ionic-native/music-controls": "^4.1.0",
        "@ionic-native/native-audio": "^4.1.0",
        "@ionic-native/splash-screen": "4.1.0",
        "@ionic-native/status-bar": "4.1.0",
        "@ionic/cloud-angular": "^0.12.0",
        "@ionic/storage": "2.0.1",
        "cordova-android": "^6.2.3",
        "cordova-plugin-console": "^1.0.5",
        "cordova-plugin-device": "^1.1.4",
        "cordova-plugin-geolocation": "~2.4.2",
        "cordova-plugin-googlemaps": "^1.4.3",
        "cordova-plugin-splashscreen": "^4.0.3",
        "cordova-plugin-statusbar": "^2.2.2",
        "cordova-plugin-whitelist": "^1.3.1",
        "ionic-angular": "3.5.3",
        "ionic-plugin-keyboard": "^2.2.1",
        "ionicons": "3.0.0",
        "ng-inline-svg": "^3.3.0",
        "rxjs": "5.4.1",
        "sw-toolbox": "3.6.0",
        "zone.js": "0.8.14",
        "cordova-plugin-music-controls": "~2.0.0"
    }

Success callback does not fire on iOS

Success callback does not fire on iOS. The console shows the PRX plugin changing states. But no callback is executed. Is there an event model that's not documented?

[PRX][Audio] Resume (or start) playing current playable
2015-05-04 17:30:49.235 [19074:4733510] PRXPlayer Plugin state is MEDIA_RUNNING

NullPointerException in ThreadsafePlayerHater

I'm getting an occasional crash when using this on Android, some devices it crashes 100% of the time, others it comes and goes. Here is a stack trace I was able to retrieve:

Android: 4.4.2
Manufacturer: LGE
Model: VK810 4G
Date: Tue May 12 16:24:46 PDT 2015

java.lang.NullPointerException
at org.prx.playerhater.wrappers.ThreadsafePlayerHater.seekTo(ThreadsafePlayerHater.java:134)
at org.prx.playerhater.ipc.PlayerHaterServer.seekTo(PlayerHaterServer.java:100)
at org.prx.playerhater.ipc.ServerPlayerHater.seekTo(ServerPlayerHater.java:101)
at org.prx.playerhater.wrappers.BoundPlayerHater$3.onServiceConnected(BoundPlayerHater.java:210)
at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1124)
at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1141)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5118)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:606)
at dalvik.system.NativeStart.main(Native Method)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.