hBasic > hSuite > hPatcher

hSuite
hPatcher Manual v1.0

hPatcher is the main gui of hSuite. Aside from creating and applying patches, it is the front-end to customising the hBasic app.

How to use patches with hPatcher
Quick guide to using patches with hPatcher.


Settings



Customise


Identity
App Icon
Permissions
Loading
StandAlone



Settings

Compile Settings

APK Package - Compiles to APK format.
AAB Package - Compiles to AAB format.  (Requirement if you upload to PlayStore).
Both options compile straight to the set format. There are no intermediary tools needed.

Build with API
This is currently set to the highest found version of the Android SDK library found in adt directory of hSuite. If you have more than one version, you may find more options here.

Run after compile
You may enter an extra command here to run after compilation successfully completes.
The command is OS dependent.
The default directory is work.
e.g for linux, you could enter "mv log.txt last-log.txt"

Viewer Command
This is what is executed when you  press the "view log" button.
The command is OS dependent.
e.g lxterminal -l -e "less log.txt"

Debug Options
This option controls how verbose the output will be and is mainly for the hSuite developer.
However, the half option is recommended to see how the compilation process is going.

Off - no debug output.
half - some debug output. (recommended)
full - very verbose - includes polling states.

Customise

Aside from patches, Customisations also make changes to the hBasic source files.
Unlike patches, customisations may be applied more than once.
To apply customisations, Click the Commit button.

When to Commit
You will need to Commit if you have made any changes to the Customisation settings and for every change to your Basic project program files for StandAlone mode.

Identity
Field
Example
Comment
App Version 2.02
Major.Minor
Shows up in VERSION$(0)
base Version
1.50
Arbitrary number to indicate anything you want.
e.g version of the master used.
Shows up in VERSION$(1)
Package_Name
postfix
myapp
Your app package name.
The front "com.rfo" is not optional.
App_Name
My App
The app display name shown below it's icon and other places.

App Icon
Field
Example
Comment
Icon input file
my_project/my_icon.png
Must be ".png" format. Use the file selector.
blank = no change
maximum output density.
144x144
Your icon will be resized to different densities.
This specifies the maximum.
(72x72 is not recommended anymore for modern phones)
resize filter
nearest neighbour
The resize method.


Permissions
Select the permissions that you app needs.

Here are a few notes;

EXTERNAL_STORAGE
For modern day scoped storage, READ and WRITE EXTERNAL_STORAGE is usually not needed anymore because you app is basically confined and you don't need any permission to do anything in your own prison.

If you are using the Legacy feature (UnScoped Storage) and only targeting older phones, then permission
WRITE_EXTERNAL_STORAGE is required.

INTERNET
You don't need this permission as it is automatically granted.
However, there are older phones (such as android Marshmallow) that are sensitive to commands such as HTML.OPEN and BROWSE that may need this permission.

LOCATION
LOCATION permissions (COURSE, FINE, MOCK, _EXTRA_COMMANDS) are needed for GPS.
ACCESS_BACKGROUND_LOCATION is not needed and is probably not allowed anymore or doesn't work.

ACCESS_WIFI_STATE
For WIFI.INFO

ACCESS_NETWORK_STATE
This is only used for AdMob otherwise you don't need it.

BLUETOOTH
All the BLUETOOTH permissions are needed for bluetooth commands.

CAMERA
For CAMERA commands.

BLUETOOTH
All the BLUETOOTH permissions are needed for bluetooth commands.

BLUETOOTH
All the BLUETOOTH permissions are needed for bluetooth commands.

BLUETOOTH
All the BLUETOOTH permissions are needed for bluetooth commands.

BLUETOOTH
All the BLUETOOTH permissions are needed for bluetooth commands.

(to be continued...)


-to-be-continued...