Wish IDE/Compiler check if Additional Library Needs Jetify

MikeSW17

Active Member
Licensed User
HI.
Background to request.
Having spent a ridiculous amount of time trying to get https://www.b4x.com/android/forum/threads/compassview-another-compassview.93977/#content
to run. It Always crashed on the Innocent first line:
B4X:
Activity.LoadLayout("main")
I tried everything I could think of, Including re-installing B4A, Tools and Resources several times. I even spotted and (unnecessarily) renamed the Additional Library name typo (library file name "NewComapassView.jar/.xml" rather than "NewCompassView.jar.xml". I eventually gave Up Trying, and down-hearted :confused:

Later while trying to comprehend the purpose of 'Jetify', i opened a recent project - that happened to be NewCompassView". On clicking Jetify menu item, "NewCompassView" appeared as a library to Jetify.
Of course once done, the New Compass App Ran Perfectly.:)

SO, To save needless time waste and frustration, would it be possible for the IDE or compile/link to detect/report if an Additional Library needs to be Jetified?
 

AnandGupta

Expert
Licensed User
Longtime User
SO, To save needless time waste and frustration, would it be possible for the IDE or compile/link to detect/report if an Additional Library needs to be Jetified?
Agree.

This is more relevant for us you need to download old samples from Forum to check.

Regards,

Anand
 

Erel

B4X founder
Staff member
Licensed User
Longtime User
It is technically not possible without trying to jettify each library, which would have a bad impact on performance. As a general rule, don't use libraries that need to be jetified. These are old and unmaintained library. Maintained libraries will always include the jetified version (the non-jetified version is never used).
 

AnandGupta

Expert
Licensed User
Longtime User
As a general rule, don't use libraries that need to be jetified.
Er... some looks important.

Below is my "jetifier.map"
B4X:
#Thu Mar 18 22:53:20 IST 2021
exoplayer_desugar.jar=1584850776000
stringfunctions.jar=1424699416000
relinker-1.3.1.aar=1593339516000
byteconverter.jar=1293779870000
ime2.jar=1597822834000
tabhostextras.jar=1396611180000
mysudoku.jar=1423324800000
exoplayer-ui-2.11.3.aar=1584850776000
exoplayer.jar=1593070574000
admanager.jar=1612721318000
exoplayer-smoothstreaming-2.11.3.aar=1584850776000
ahlocale.jar=1383543522815
exoplayer-hls-2.11.3.aar=1584850776000
exoplayer-dash-2.11.3.aar=1584850776000
exoplayer-2.11.3.aar=1584850776000
extension-rtmp-2.11.3.aar=1584850776000
dialogs2.jar=1561094670000
websocket.jar=1587533978000
geocoder.jar=1459218702000
http.jar=1303472324000

exoplayer.jar, ahlocale.jar etc. looks important for development as per my requirement. So what is advised for them ?

Regards,

Anand
 

Sandman

Expert
Licensed User
Longtime User
I imagine it would be possible for us developers to add a custom build action to jetify the libs, in case we are so inclined?

 

Erel

B4X founder
Staff member
Licensed User
Longtime User
I imagine it would be possible for us developers to add a custom build action to jetify the libs, in case we are so inclined?
Not really needed as libraries only need to be jetified once.

exoplayer.jar, ahlocale.jar etc. looks important for development as per my requirement. So what is advised for them ?
It has no real meaning. ExoPlayer and AHLocale don't need to be jetified.
 

AnandGupta

Expert
Licensed User
Longtime User
It has no real meaning. ExoPlayer and AHLocale don't need to be jetified.
Ahh.. I saw them in my jetify list and I jetified them. May be I had older version in my drive. I will download new ones.

Regards,

Anand
 
Top