B4A Library ProBundle

ProBundle contains all the following libraries:

- ArchiverPlusZip v1.13
Based on the Zip4j library, this library allows to add, extract, update and remove files from a zip archive.
It supports encryption and decryption (standard and AES), Zip64 format and split zip archives. It is compatible with B4J.

- ClassLoader v1.0
This library can dynamically load classes from a separate file (JAR or uninstalled APK) at runtime and verify the file signatures to make sure of its origin and integrity.
You can use the library to create plug-ins, load code encrypted in the assets or download code from a remote server, for example.

- CPUFeatures + source v1.0
This library detects the target device's CPU family and the maximum number of CPU cores.

- DataCollection v1.07
This library wraps the ArrayDeque, BitSet, PriorityQueue, SparseArray, Stack, TreeMap and TreeSet classes. These classes can replace your lists, maps or arrays for specific tasks. A TreeSet, for example, can maintain a sorted list of objects in a more efficient manner than a typical List class. A TreeMap is a map whose entries are sorted by their keys. A SparseArray is also a sorted map, but restricted to integer keys, that is lightning-fast.
This library can serialize to an array of bytes any collection, including Map, List and user defined types. A version for B4J is provided (without the SparseArray).

- F5Steg v1.2
This library implements F5, a secure steganographic algorithm, which embeds data into images. Data are encrypted with a password or, by default, with the application signature (thus any tampering of the APK will prevent from extracting valid data).

- FastIO + source v0.9
This library replaces the Read and Write functions (with their encrypted variant) of the RandomAccessFile library for arrays of bytes. These new functions are a lot faster.

- OverlayWindow + source v1.2
This library allows to create overlay windows and floating buttons. These interactive views can be displayed on top of all other applications.

- PackageUtils v2.1
This library replaces the PackageManager class of the Phone library. It gives plenty of informations on packages (activities, features, permissions, receivers, services, etc.) and can list the features available on the system (camera, gps, wifi, etc.). It allows experts to change the enabled state of components.
An application is provided with the library to show what you can get with it.

- UltimateArchiver v0.91
This library wraps P7Zip, a command line utility that can create archives with the 7z, zip, bzip2, gzip, tar or xz format. It can unpack files with extension 7z, cab, gz, img, iso, jar, rar, tar, zip and a few others.
It supports encryption/decryption and volumes. It is written in C to be as fast as possible.

- UnArchiver7z v1.0
Based on the official source code in C of 7zip, this library allows to extract files from a 7z archive compressed with the Lzma or Lzma2 method. It can unpack an archive directly from the assets.
It does not support decryption.

- UnArchiverRar v1.04
Based on the official source code in C++ of the UnRar.dll, this library allows to extract files from a Rar archive.
It supports decryption, Rar5 format, QuickOpen records and split Rar archives.

Since September 2018, ProBundle is available for free. You can still donate for it if you wish.
To send the money, just click on the Donate button below (the amount to enter is in euros):


CURRENT VERSION : ProBundle 1.22

DOWNLOAD HERE:
 
Last edited:

Informatix

Expert
Licensed User
Longtime User
Hello again,
I am getting a bit further: the problem lies in the Wait For construction. I found some topics about Wait For and in one of them you/Erel mentioned that CallSubDelayed should be used when Wait For is used more than once. So I have split up the code and the files do get unzipped now.
I still don't understand that the code worked with a previous sftp-server download in previous SDK's.
Anyway, thank you very much for your help, it's much apreciated.

Regards,
Helen
I'm not sure to see the relationship with the problem of damaged zip file you mentioned but I'm glad for you anyway.
 

Merlot2309

Active Member
Licensed User
Longtime User
It turned out that the zip file was not damaged; however I guess that my code did not "close" the zip file(s) correctly after downloading.
 

mr.gedo

Member
hello, @Informatix i'm getting problem with OverlayWindow after updating B4A and sdk to Android 10
This error appears when trying to Compile project

B4X:
B4A Version: 10.50
Parsing code.    (0.00s)
    Java Version: 8
Building folders structure.    (0.03s)
Compiling code.    (0.01s)
Compiling layouts code.    (0.00s)
Organizing libraries.    (0.00s)
    (AndroidX SDK)
Generating R file.    (0.00s)
Compiling generated Java code.    Error
javac 1.8.0_271
src\b4a\example\main.java:340: error: package b4a.flm.overlaywdw does not exist
public b4a.flm.overlaywdw.OverlayPermission _op = null;
                         ^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 error

Any advice?
 

Informatix

Expert
Licensed User
Longtime User
hello, @Informatix i'm getting problem with OverlayWindow after updating B4A and sdk to Android 10
This error appears when trying to Compile project

B4X:
B4A Version: 10.50
Parsing code.    (0.00s)
    Java Version: 8
Building folders structure.    (0.03s)
Compiling code.    (0.01s)
Compiling layouts code.    (0.00s)
Organizing libraries.    (0.00s)
    (AndroidX SDK)
Generating R file.    (0.00s)
Compiling generated Java code.    Error
javac 1.8.0_271
src\b4a\example\main.java:340: error: package b4a.flm.overlaywdw does not exist
public b4a.flm.overlaywdw.OverlayPermission _op = null;
                         ^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 error

Any advice?
I compiled my demo projects with B4A version 10.50 on an Android 10 device with SDK 30 and got no issue.
 

mr.gedo

Member
hello @Informatix,
Good day,

Please how can i add animation to OverlayWindow like fade-in whe open and fade-out when close ?
i try (Animation lib) but dont work so if there's solution to do this please tell me

thanks
 

Informatix

Expert
Licensed User
Longtime User
hello @Informatix,
Good day,

Please how can i add animation to OverlayWindow like fade-in whe open and fade-out when close ?
i try (Animation lib) but dont work so if there's solution to do this please tell me

thanks
Here's an example.
In the demo OverlayInfo, add the NineOldAndroids library and insert this code just after OW.Open in ShowWindow:
B4X:
        Dim AnimScaleX As noaObjectAnimator
        AnimScaleX.InitializeFloat(OW.Panel, AnimScaleX.PROPERTY_SCALE_X, 0, 1, "")
        AnimScaleX.RepeatCount = AnimScaleX.REPEATCOUNT_INFINITE
        AnimScaleX.RepeatMode = AnimScaleX.REPEATMODE_REVERSE
        AnimScaleX.Start
Another example:
B4X:
        Dim AnimAlpha As noaObjectAnimator
        AnimAlpha.InitializeFloat(OW.Panel, AnimAlpha.PROPERTY_ALPHA, 0, 1, "")
        AnimAlpha.RepeatCount = AnimAlpha.REPEATCOUNT_INFINITE
        AnimAlpha.RepeatMode = AnimAlpha.REPEATMODE_REVERSE
        AnimAlpha.setDuration(1000)
        AnimAlpha.Start
 

mr.gedo

Member
Here's an example.
In the demo OverlayInfo, add the NineOldAndroids library and insert this code just after OW.Open in ShowWindow:
B4X:
        Dim AnimScaleX As noaObjectAnimator
        AnimScaleX.InitializeFloat(OW.Panel, AnimScaleX.PROPERTY_SCALE_X, 0, 1, "")
        AnimScaleX.RepeatCount = AnimScaleX.REPEATCOUNT_INFINITE
        AnimScaleX.RepeatMode = AnimScaleX.REPEATMODE_REVERSE
        AnimScaleX.Start
Another example:
B4X:
        Dim AnimAlpha As noaObjectAnimator
        AnimAlpha.InitializeFloat(OW.Panel, AnimAlpha.PROPERTY_ALPHA, 0, 1, "")
        AnimAlpha.RepeatCount = AnimAlpha.REPEATCOUNT_INFINITE
        AnimAlpha.RepeatMode = AnimAlpha.REPEATMODE_REVERSE
        AnimAlpha.setDuration(1000)
        AnimAlpha.Start


Thank you very much it's work fine but how can i make fade-out when i Stopservice ?
 

DonManfred

Expert
Licensed User
Longtime User

johnmie

Active Member
Licensed User
Longtime User
It's one of its possible use but you cannot limit the library to that. The second demo, for example, uses 2 cores to fill an array faster.
In some cases, using a service is better. Without knowing exactly what people want to do with the library, it's difficult to give a good advice.

I already answered in post #14.
Dear Frédéric,
I've successfully used some of your libraries (e.g. B4A ultimate list-viewer) in the past and am now interested in ArchiverPlusZip for B4J. Where can I download it (as "download here:" above has no link)?
Thanks for your help.
john m.
 

sea1812

Member
Licensed User
Hi, would someone can tell me how to fix this problem ? Thanks a lot.
The project is OverlayInfo in ProBoundle's Example OverlayWindow + source v1.2.zip.

B4X:
SvcOverlayInfo - 118: Undeclared variable 'c' is used before it was assigned any value.
SvcOverlayInfo - 114: Undeclared variable 'c' is used before it was assigned any value.
SvcOverlayInfo - 11: Unknown type: cache<br />Are you missing a library reference?

My B4A Version is 10.70
 

Informatix

Expert
Licensed User
Longtime User
Hi, would someone can tell me how to fix this problem ? Thanks a lot.
The project is OverlayInfo in ProBoundle's Example OverlayWindow + source v1.2.zip.

B4X:
SvcOverlayInfo - 118: Undeclared variable 'c' is used before it was assigned any value.
SvcOverlayInfo - 114: Undeclared variable 'c' is used before it was assigned any value.
SvcOverlayInfo - 11: Unknown type: cache<br />Are you missing a library reference?

My B4A Version is 10.70
There's a missing library: Cache.
 

sea1812

Member
Licensed User
There's a missing library: Cache.
Thanks a lot ?
 
Top