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:

jimmyF

Active Member
Licensed User
Longtime User
I use the ULV and, I have to say, it's an incredible product.
 

Informatix

Expert
Licensed User
Longtime User
The free distribution of some ProBundle libraries does not mean terminating support for existing donors or abandoning the whole product in the near future. What will be abandoned in the free version are the guides about security (most of you are not interested, so it's a waste of time for me), the PDFium library (too complicated to maintain and not really continued by its original author) and the CallSubExtended library (WaitFor/Sleep should be used instead).
 

JackKirk

Well-Known Member
Licensed User
Longtime User
What will be abandoned in the free version are the guides about security (most of you are not interested, so it's a waste of time for me),
Under "guides about security" do you include the Protect My App work?

If so I would consider this a sad commentary on the B4A community - I found it exceedingly useful and have extended the concepts to my B4J apps.

Anyone who is a serious B4A developer should be aware of and use this.
 

clarionero

Active Member
Licensed User
Longtime User
Under "guides about security" do you include the Protect My App work?

If so I would consider this a sad commentary on the B4A community - I found it exceedingly useful and have extended the concepts to my B4J apps.

Anyone who is a serious B4A developer should be aware of and use this.

True, I agreed. All of Informatix's work is a clear example of a job well done and great support.

Rubén
 

JackKirk

Well-Known Member
Licensed User
Longtime User
Only a few people showed a real interest for this work.
This can only mean 1 of 2 things:

o The vast majority of B4A users are amateurs/hobbyists.
o Most "professional" B4A users have not discovered this work.

Suggestions:

o Maybe start a B4A thread on Protect My App - maybe make the discussion paper available - get the word out.
o Extend the work along the lines we half started long ago - develop a real deep obfuscation tool - the one I have developed from our interaction is rude and crude and requires some playing around but works a treat - on B4A and B4J.
o Charge for this tool.

If there are any "professionals" out there they should appreciate the effort - otherwise, almost by definition, they aren't ("professional" that is).
 

Informatix

Expert
Licensed User
Longtime User
This can only mean 1 of 2 things:

o The vast majority of B4A users are amateurs/hobbyists.
According to a security expert, almost all apps on the Play Store have a very weak protection or no protection at all. I thought it might result from an insufficient or poor quality offer and created a method using rather obscure C code (the ProBundle project). But the reality is that most people don't care.

o Most "professional" B4A users have not discovered this work.
I embarrass professionals because I am not a company, I do not issue invoices, I offer no guarantees and I am not even a recognized security expert. So even if they know my product, they will hesitate to use it and I understand them. I am myself a professional using security softwares. I wouldn't donate on a forum to get something to protect my servers or my files.
 

JackKirk

Well-Known Member
Licensed User
Longtime User
According to a security expert, almost all apps on the Play Store have a very weak protection or no protection at all. I thought it might result from an insufficient or poor quality offer and created a method using rather obscure C code (the ProBundle project). But the reality is that most people don't care.
Maybe most apps are games or quasi trivial so the effort is not warranted.

I'm currently involved in a major project where security breaches would be very detrimental - both on the $ front and reputational damage if customer data was hacked. I'm using the knowledge I gleaned from the Protect My App stuff to protect a B4A app and 7 B4J apps running on AWS EC2. I have a nephew who is big into IT security - if I can swing a freebie I might get him to throw it at one of his red teams.

I am myself a professional using security softwares. I wouldn't donate on a forum to get something to protect my servers or my files.
I would never describe myself as a professional in the security area (and a number of other IT areas) but I have significant experience (first program written using paper tape in 1967). One thing I have learnt is this - no one knows everything in any one area. I would be very suspicious of a "black box" security solution but am quite happy to "donate on a forum" for quality information.
 

CaptKronos

Active Member
Licensed User
I have a personal interest in security but I'm not developing anything that requires much security. Therefore, I would still be interested in looking at ProtectMyApp and your other security guidance. Is it still chargeable?
 

DKnowles

Member
Licensed User
Longtime User
Hi Informatrix,
We use your UltimateArchiver 0.91 (and donated), after getting finger burned with ignoring the Google warnings about uploading apps < v26 I'm acting on the latest Google requirment on the day I got the email.

Can you confirm that UltimateArchiver 0.91 is 64bit compliant, I think it is as its .so file is in the armeabi-v7a list, but just want to be safe.

Yours David
 

DonManfred

Expert
Licensed User
Longtime User
Can you confirm that UltimateArchiver 0.91 is 64bit compliant
At least it contains a 64bit native. So i expect it to be compliant.
 

aidymp

Well-Known Member
Licensed User
Longtime User
Hi @Informatix, Would you be willing to do more with your Coverflow lib? I donated ages ago and its still works well, but it needs more speed! and on some devices (Amazon Fire TV) longclick works but also triggers click!

I would like also like

vertical layout

on selecting in code it could scroll to the item (optional)

also a centre image option, adding a bitmap it always starts at the floor level (which is right) but i would like it to realise that this item is smaller, and should be centred

happily donate again and again.....

Or maybe personal modification? I will pay.
 

Informatix

Expert
Licensed User
Longtime User
Hi @Informatix, Would you be willing to do more with your Coverflow lib? I donated ages ago and its still works well, but it needs more speed! and on some devices (Amazon Fire TV) longclick works but also triggers click!

I would like also like

vertical layout

on selecting in code it could scroll to the item (optional)

also a centre image option, adding a bitmap it always starts at the floor level (which is right) but i would like it to realise that this item is smaller, and should be centred

happily donate again and again.....

Or maybe personal modification? I will pay.
Sorry but this library won't be updated. I don't have enough time for that.
 

JackKirk

Well-Known Member
Licensed User
Longtime User
Hi @Informatix,

Just received a somewhat vague email from Google re all apps must provide a 64-bit version to publish an update after August 1, 2019.

They say "at least one of your apps uses native code but does not currently offer a 64-bit variant" then list 2 of my apps.

The "at least one..." is the vague bit.

Doing some research on the forums and it would appear the only possible problem is associated with .so libraries.

One of my apps in their list uses Secure Vault and has, as its only .so library libSV.so - in the following folders of the apk:

apk\lib\x86\
apk\lib\armeabi-v7a\

Would you be able to tell me if this means I have a problem?
 

JackKirk

Well-Known Member
Licensed User
Longtime User
Would you be able to tell me if this means I have a problem?
Answering my own question (but I would like @Informatix to check and confirm):

For background, go to:

https://developer.android.com/ndk/guides/abis

and look at the section titled "Supported ABIs" - it appears that the current ABIs are:

armeabi-v7a

arm64-v8a
x86
x86_64

It appears all you have to do (referring to @Informatix guide "MySecureVault v1.1.pdf") is:

1. find the section in the guide that says:

Example:
/mnt/sdcard/SecVault/jni -> C:\Android-NDK\jni
/mnt/sdcard ...


2. add this to the guide after the above:

Edit the file C:\Android-NDK\jni\Application.mk so that it reads:

APP_STL := c++_static
APP_CPPFLAGS += -fexceptions
APP_PLATFORM := android-16
APP_ABI := armeabi-v7a x86 arm64-v8a x86_64

follow the amended guide and you will generate *.so files for all supported ABIs
 
Top