I have a tablet that we are purchasing from a company that has a custom version of Android version 7.1.2 Kernel 4.4.83. I cannot get any Delphi or C++ Builder app to run on this tablet. The apps crash in different places depending on the controls being used on the app. Cannot even get a blank app to run which gets the exception below. Does anyone know what libraries, etc. need to be build into the Android kernel to be compatible with FMX so I can notify the manufacturer. I have tried Berlin, Tokyo and Rio with the same results.
First chance exception at $D3B73B49. Exception class EJNIException with message 'java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.contains(java.lang.CharSequence)' on a null object reference'. Process HeaderFooterApplication.apk (17108)
I just faced the exact same problem. A completely blank app (not even a label on it) results in that exact error message just after Application.Run - in fact the error message appears in an endless loop.The tablet that i face the problem is a Bitmore tablet with Android 6.0.1. I have tested my environment and it works great from 2.2 up to 8 with no problems.do we have any news on the subject? its quite weird and critical!thank you in advanceleonne
the error occurs from unit Androidapi.JNIMarshal / procedure ExecJNI
after Application.Run (execjni works ok when called from Application.Initialize)have tried tons of tests, no idea why this is happening. perhaps because its 6.0.1 and not 6.0 ? i wonder
have you solved this problem? I have the same error in Android 7.1. I have tested with blank proyect too...
no. :/ just tried to uninstall ndk and sdk and install them back. didnt work. tried old ndk and sdk then new ndk and sdk, no change at all so it seems has nothing to do with it. i have messed up with androidmanifest xml, no solution in there too.
i really dont know what else to experiment with. btw, u can +1 at the top right of page so that we count how many of us face this problem.
i will keep digging and if i find anything i will post it.
update : delphi xe7 creates correct apk, blank app opens ok... what the heck
yes, I have created a valid apk with Berlin 10.1, with the same SDK and NDK used with Tokyo
then... only I can see one problem with 1 or several libraries/headers/pascal units... What??
so, the problem appears AFTER Berlin...? OP says he tried Rio with no result. i am currently downloading RIO TRIAL to see if the problem is indeed in Rio too.
confirmed : RIO 10.3.3 TRIAL also has problem. blank app wont start, showing that null error message in an endless loop. will try BERLIN TRIAL now to verify what you said, that it works.
confirmed : BERLIN update 2 is OK. i have installed a trial and it works. so the game was lost since Tokyo. will continue digging to find a solution if possible.
Yeah! if you find it, please, share it here! At least we have Berlin... although I think Embarcadero should investigate this trouble...
This does not sound like an issue with the build on the tablet. The error message clearly shows that the error is in trying to call the Java Native Interface (used by Delphi to get to some of the underlying system capabilities) to access the "contains" method of the String class. The issue is that the string is null (unassigned).I would try putting in exception handling at the highest level, then see if you can get a call stack to show you where the actual error originated. In normal Delphi code a string with the value of "" (blank) is a null pointer. If any string method is then attempted on a blank string, this error would occur.I mention this just in case it will help you to think it through.