A B4J testproject where the obfuscation doesn't work:
B4J code:
Sub Class_Globals
Private Root As B4XView
Private xui As XUI
Private btndata As Button
Private btnreport As Button
Private ta1 As TextArea
Private wv1 As WebView
Private reclst As List
Private htmlstring As String = ""
Private itemlst As List
Private valuesmap As Map
Private headlst As List
Private fldlst As List
End Sub
And the decompiled java code:
public String _class_globals() throws Exception {
this._vvvv1 = new B4XViewWrapper();
this._vvvv2 = new B4XViewWrapper.XUI();
this._btndata = new ButtonWrapper();
this._btnreport = new ButtonWrapper();
this._ta1 = new TextInputControlWrapper.TextAreaWrapper();
this._wv1 = new WebViewWrapper();
this._vvvv3 = new List();
this._vvvv4 = "";
this._vvvv5 = new List();
this._vvvv6 = new Map();
this._vvvv7 = new List();
this._vvvv0 = new List();
return "";
}
Conclusion: obfuscation will make it more difficult to read your code but it will not prevent a malicious programmer from stealing your code.