Skip to content

Commit 06b83c2

Browse files
authored
Merge pull request #82 from djwillcaine/patch-2
Adding error messages for failed connections (Android)
2 parents d63c50b + b13d3ff commit 06b83c2

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

android/src/main/java/com/reactlibrary/RNSpotifyRemoteAppModule.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@
1717
import com.spotify.android.appremote.api.ConnectionParams;
1818
import com.spotify.android.appremote.api.Connector;
1919
import com.spotify.android.appremote.api.SpotifyAppRemote;
20+
import com.spotify.android.appremote.api.error.CouldNotFindSpotifyApp;
21+
import com.spotify.android.appremote.api.error.NotLoggedInException;
22+
import com.spotify.android.appremote.api.error.UserNotAuthorizedException;
2023

2124
import com.lufinkey.react.eventemitter.RNEventConformer;
2225

@@ -56,7 +59,15 @@ public void onConnected(SpotifyAppRemote spotifyAppRemote) {
5659
public void onFailure(Throwable throwable) {
5760
while (!mConnectPromises.empty()) {
5861
Promise promise = mConnectPromises.pop();
59-
promise.reject(throwable);
62+
if (throwable instanceof NotLoggedInException) {
63+
promise.reject(new Error("Spotify connection failed: user is not logged in."));
64+
} else if (throwable instanceof UserNotAuthorizedException) {
65+
promise.reject(new Error("Spotify connection failed: user is not authorized."));
66+
} else if (throwable instanceof CouldNotFindSpotifyApp) {
67+
promise.reject(new Error("Spotify connection failed: could not find the Spotify app, it may need to be installed."));
68+
} else {
69+
promise.reject(throwable);
70+
}
6071
}
6172
sendEvent("remoteDisconnected", null);
6273
}

0 commit comments

Comments
 (0)