The bug I found is a NullPointerException on line 318 of KeenClient.java. Working backwards, that means that getKeenCacheSubDirectories() returns null, which happens because getKeenCacheDirectory() returns an invalid directory.
To fix the bug, I run the following code before calling KeenClient.upload():
java.io.File keenDir = new java.io.File(context.getCacheDir(), "keen");
if(!keenDir.exists()) {
keenDir.mkdir();
}
The bug I found is a NullPointerException on line 318 of KeenClient.java. Working backwards, that means that getKeenCacheSubDirectories() returns null, which happens because getKeenCacheDirectory() returns an invalid directory.
To fix the bug, I run the following code before calling KeenClient.upload():