Username or EmailPassword
No I would think it may still be with the API.
Java is a good language. In many ways much better then the Cs ... However for innovative application development it falls a bit short as its robust API becomes more of a hinderance to design then an advantage. Sometimes you will need to go back to the core and rebuild a new library especially if you are doing something new.
Java API is still strongly based on Desktop Applications (which is ironic as Java was first designed for imbedded devices) Phones and mobile devices needs different UI many of which Java isn't strong at. C being a lower level language forces you to make the UI again but allows you to handle it with the new interface methods.
I think it has to do more with performance, resource usage, etc.