-
Notifications
You must be signed in to change notification settings - Fork 155
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to run on Android 7.0 because java.util.Base64 #1044
Comments
@zpsw How does a 4 year old Android version not have part of Java 8? I don't think this is fixable, but I'll welcome any suggestions you might have to fix this. |
Android 7, named Nougat, is a version from 7 years ago. This version indeed lacks java.util.Base64. My current approach is to fork a copy of the code, extract java.util.Base64, and then replace all references. I'm not sure if this is a good solution. |
I suppose we could build an interface for the base46 methods we need and then allow the developer to provide an implementation in connection options. Probably should have some sort of unit test that a developer could run to validate base 64 encoding as a black box. |
@zpsw Do you have an implementation that we could possibly put in the code? If you wrote the code that would be the best, if it's a 3rd party library, even OSS, I'd have to consider it carefully. |
@zpsw We are currently in discussion to hard fork the repo and port it to api 24. base64 isn't just the only thing in the code that needs to change. I'll try to remember to keep you up to date. |
I've added possible solution for this issue in the PR #1120. |
Observed behavior
java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Failed resolution of: Ljava/util/Base64;
Expected behavior
can run on Android 7.0
Server and client version
jnats 2.17.1
Host environment
No response
Steps to reproduce
run on Android 7.0
The text was updated successfully, but these errors were encountered: