Skip to content

Advanced configuration

Regex

File replace regex

This is a regex used throughout the package renaming process. It's default value is (?<=[./_])({value})(?=[./_]). The substring {value} is replaced with the original package company name one the renaming process starts. The button to the right of the text box is a reset button which will reset the regex string to its default value.

Warning

It's important that the substring {value} be present and that the regex is valid, or the renaming process will not work. If you're trying to edit the regex, use regex.101 or other tools to make sure it won't fail.

Thread count

Specifies the maximum number of threads that can work towards the renaming process.

Note

This only specifies the maximum number of threads that can be used, it doesn't guarantee that many threads are going to be used, especially if the package is super small.

This value can also be overridden by writing directly to the configuration file, but increasing the number of threads will not be beneficial if your systems CPU doesn't support the number of requested threads.

The case of creating too many threads

Rename options

Rename libraries

This toggle determines if library binaries will be renamed (in the literal sense). Libraries are loaded at runtime based on their string name. So, sometimes renaming the name of the file is mandatory to make sure the linking process remains intact.

Rename libraries internally

Besides renaming binary files, sometimes there are native implementations to methods defined in Smali (Java) code. There's no need to worry about the binaries becoming corrupt as their renaming process only affects the string table sections. All code and binary sections are left untouched.

Example

The format of these native link strings are:

Java_<tld>_<classes ...>_<method>

An example using realistic naming would be:

Java_com_sombody101_QuestionableInvoker_ActionContextLocator_LocateContext

Rename OBB files internally

There isn't an option for renaming OBB files because that's a standard part of the renaming process, but renaming them internally isn't.

With this, the file entries in every found OBB file are searched through in memory. If an entry either has the word "catalog" inside it or is a direct match to an entry in the Extra OBB Rename Paths text box, then it's fully extracted into memory, renamed, then repacked into the OBB.

OBB renaming extras

Extra OBB rename paths

This box is disabled when the Rename OBB Files Internally toggle is disabled.

Every line in this textbox will be used as an internal file path in each OBB file found. For example, the if the path aa/Android/bin/tts/index.json is found in an OBB file, that file will be extracted into memory, renamed, then repacked. No error or warning will be triggered if it's not found.

Each item can be either comma or newline separated. They will be newline separated regardless of the method used the next time APKognito loads the saved values.

Auto rename configs

Danger

This feature can pose a huge security risk and was only implemented to address certain packages. 99% of packages do not need this!

Only use this if instructed by an active maintainer of APKognito to solve an issue, or if you trust the source of the script!

Auto rename configs use explicit UNIX-like commands to manipulate the renaming process in ways that would be too overly complex to hard-code into APKognito. All commands are manually implemented wrappers for operations defined in C# (command bindings).

More information on auto rename configs can be found in the auto config API guide.