• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

General Modding your Joying/FYT SC9853i unit without root

Search This thread

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
See title: Only for SC9853i Joying/FYT 8.1 units.
Due to some changes in the flashing process since the previous PX5 and Sofia 3GR models it is now partly possible to mod your unit without root.

Some info to start with:
(partly from 4pda, partly from a "hint" from @julien_blanche, mostly from own knowledge)

Contents of a firmware zip:
Code:
6521_1.zip           # The zip that contains the boot.img; the system/vendor/oem partitions and a few other things.
Allapp.pkg           # Special file that contains all FYT apps (actually a special XAR archive.)
config.txt           # file comparible to the build.prop which can contain additional properties
lsec6521update       # The binary that really does the update
oem                  # Folder containing some additional apps
Stm32ud.bin          # The MCU binary. It is not always in every firmware
updatecfg.txt        # Contains instructions for the flashing process
crruptoff            # Special file for "WiFi only". Not in the normal firmwares. Be careful!


Some commands that can be put inside updatecfg.txt
Code:
twipe_all     # Wipe entire system
twipe_data    # Will wipe data partition (but not /sdcard, internal memory). Wiping the /data partition will wipe all config, all 3rd party apps and updates of system apps. This is the same as a "reset to factory defaults"
twipe_sd      # Will wipe internal memory /sdcard (but not the data partition)
dellapp       # Remove all 3rd party apps
make_updates  # Make an upgrade U-disk boot file
test             # test unit and firmware before flash

Some properties that can be put inside config.txt. Say you live in Brazil and you want your locale settings immediately on Brazil, you can add that, for example:
Code:
ro.product.locale = pt_BR

The file crruptoff:
If you have a unit with a 4G module, but you don't have 4G (or don't want to use it), you can use this file. Put one line in this crruptoff being "fixwifi" and save it to the sdcard/usb-stick you use for flashing.
You can use it to get rid of the "No SIM" notification in your notification bar.
Does not work anymore on the later firmwares. Chances are minimal but maybe it might work again "some day".

The Allapp.pkg
The Allapp.pkg file is a special XAR archive with a directory structure. You can use ApkPack.exe to create or extract it.
Folder path: This is where your files are being extracted to, or packed from
File path: This is the file that is being created (packed), or where the files are extracted from.
All apks (*.apk) and all libraries (*.so) will be installed as system apks and libraries, which means you can't uninstall them, but on the SC9853i units they are installed under /oem and not under /system.
Inside this Allapp.pkg you will also find two other files: fyt.prop and skipkillapp.prop.
The fyt.prop is identical to the build.prop but gives the option to add extra properties or replace/modify properties in the build.prop.
The skipkillapp.prop contains apps (package names) with values from -15 to 15.
When going into "deep sleep" the packages not mentioned in this list will be killed. Applications in this list with positive values will absolutely be killed (unstable otherwise??). The ones with higher values first. The ones with values 1 and 0 as last, where the app with value 0 will be the last killed before going into deep sleep.
The apps with negative values are considered system apps and will not be killed. In this case the most negative number (-15) has the highest priority. My assumption (not tested, not verified) is that negative numbers approaching 0 might be killed if the system needs the memory?
So in other words: If you do not want that some of your apps are killed, you can add them to this "skipkillapp.prop" by their package name. Say you use @realzoulou's DAB-Z app, you would add a line for DAB-Z (com.zoulou.dab). Or for example if you are a Tasker user, which is normally killed as well:
Code:
com.zoulou.dab = -10
net.dinglisch.android.taskerm = -10
(I would suggest not using values like -15, -14, -13 to make sure you do not really interfere with the real system apps).
And then you need to add this file to your own allapp.pkg

The lsec_updatesh folder and lsec.sh script
Practical applications:
  • Making patches, an alternative to creating the Allapp.pkg package.
  • Work on all folders in the unit (which Allapp.pkg cannot do).
  • Delete unnecessary files or applications (who uses the calculator app?), or overwite files like the fyt.prop or others.
  • Modify/overwrite config files that are otherwise not modifiable (like bluetooth config?)
  • Setting properties that normally require root/admin rights.
  • Creating backups of your partitions using the dd command. This can be handy on a device for which you do not have a firmware yet as backup.
  • Rooting your unit, also if you do not have a firmware from your supplier.
  • Make a Custom ROM by simply doing all kind of modifications after the "normal" firmware flash.

See for more info about the "The lsec_updatesh folder and lsec.sh script" in post #228.

Creating an Allapp.pkg and flash it to your device (post #2)
Some pre-build flashable images (post #3)
And if everything goes wrong and your unit ends up in a boot loop or doesn't get past the boot logo. (post #4)
 
Last edited:

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
Creating an Allapp.pkg and flash it to your device

Use the (English) version of ApkPack.exe (english version attached) to unpack/repack an Allapp.pkg. (It also works with wine on Linux/MacOS)

(See this youtube link for a really quick & dirty (and unsharp, sorry) video about what scrolls on your screen when flashing such a mini Allapp.pkg)

(1) Quick example:
  • Create a folder Allapp
  • Copy some wanted apks or mods into the folder.
  • Use the ApkPack.exe to create the Allapp.pkg
  • Simply copy the "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
  • Put the USB-stick into your unit and it will recognise the update and flash it to your unit.
  • Other options:
    • Copy the "Allapp.pkg", (optional) "updatecfg.txt", (optional) "config.txt" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
    • In my case having a 4G unit without using 4G and wanting to use Google Assistant for calls: Copy the Allapp.pkg, config.txt (see above), crruptoff (see above) and lsec6521update onto a clean FAT32 formatted USB-stick.
    • Note that when NOT using an updatecfg.txt, nothing will be wiped on your unit. Only added/replaced.

(2) Another example:
  • Create folder Allapp on your pc/laptop
    • add (2019-08-14) main server mod with extended navi_app.txt and "BT to background" hacks. (see my github repo. Be careful to choose the one for your specific firmware date)
    • add BW-RDS radio mod (see my github repo. Only choose version for Android 8.1 if you want full functionality)
    • add oandbackup (dk.jens.backup_305.apk) (Free and open source backup restore apk)
    • add latest MagiskManager-v7.3.2.apk
  • Use apkpack.exe (attached) to create a new Allapp.pkg by selecting the folder to be packaged, the name of the file being Allapp.pkg, and select button "Packed" (sloppy translation from Chinese)
  • Copy created "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted USB-stick.
  • Insert in your unit and the flashing process will start (Note: It will mention "Setting to factory defaults" before flash reboot, but it is really not doing that)
  • After the (very quick) flash and normal reboot, you will have 2 new apps and 2 modded apps.

(3) Example for a FYT compatible SC9853i, like a Sinosmart or Zhan or "unnamed":
You can also create your own Allapp.pkg, also with a modded Joying apk as the apks are actually identical, but there is one big naming issue to take into account!
Even though the apks are identical having the same package name, they have different apk names. A normal install will check for the package name and replace the apk with that same package name, whatever its apk name (think of versions or build time stamps behind the the "normal" name). The flashing method simply looks at the apk name and will create an /oem/app/<apk_name>/<apk_name>.apk. In this case versions numbers of build timestamps will create again and again a new folder with the exact same apk and none will work.
As an example for the radio app:
  • Joying: 190043001_com.syu.radio.apk
  • Sinosmart: 190042001_com.syu.radio.apk
  • "Some" unbranded: 190101001_com.syu.radio.apk
Again: The apks are exactly the same but have a different name. If you simply flash one next to the other, both will not work anymore as both have the same internal package name being "com.syu.radio". So you have no radio at all.
So, how to create an Allapp.pkg with a modded Joying apk for your FYT compatible SC9853i unit?
  • Check the name of your unit's radio app (or BT, Video, Music app). (If you don't know how you can use my HWGet_info.apk and open the resulting HWget_info.zip and look inside the "oem_listing.txt")
  • Find the name of the modded Joying app.
  • Rename the modded Joying app to the name of your app. So for example for Joying-> Sinosmart radio app: rename 190043001_com.syu.radio.apk to 190042001_com.syu.radio.apk (Joying to Sinosmart)
  • Create a folder Allapp
  • Copy the modded and now renamed Joying radio apk into the folder (repeat if relevant for other mods).
  • Use the ApkPack.exe to create the Allapp.pkg
  • Simply copy the "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
  • Put the USB-stick into your unit and it will recognise the update and flash it to your unit.
  • Also create an Allap.pkg for your original app so you can always flash back the original app if you want (or need) to.
 

Attachments

  • ApkPack.zip
    728.8 KB · Views: 1,079
Last edited:

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
Some pre-build flashable images

Only for real Joying SC9853i units. Other FYT compatibles are not supported.
All SC9853i FYT models are actually the same, but boot images are mostly different and apks have different names. In the latter case you would have 2 identical apks with the same package name, but with a different apk name residing in different folders. Neither of them will work anymore as Android doesn't know which one is the correct one.

The zips that can be found in this post can be directly unzipped to a clean, empty Fat32 formatted USB-stick or SD-card. You do not need to be rooted and you don't need my JET apk.
When this USB-stick or SD-card is inserted into your unit, the unit will recognize it as a flashable firmware and start flashing the files to your unit.

Notes:
  • These flashable firmware files will leave all your installed apps and settings as they are. Only the files in these Allapp.pkg files will be overwritten.
  • The zips containing boot images will only overwrite the boot image. All apps and settings remain as they are.
  • The "combi" zips are just combinations of possible mods and/or boot images. They behave the same as the previous two.
  • The zips that can be downloaded from this post are all on one of my github repositories. You can find it here: SC98531BinRepo.
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Boot images
2019-11-28 | 20191128-rooted-boot-image (thanks to @rigattoni) | 20191128-normal-boot-image
2019-09-17 | 20190917-rooted-boot-image | 20190917-normal-boot-image
2019-08-14 | 20190814-rooted-boot-image (thanks to @julien_blanche)

----------------------------------------------------------------------------------------------------------------------------------------------------------------
Main server apk mods (the 190000000_com.syu.ms.apk)
The ORG version is the apk as delivered by Joying in their firmwares.
The ORG_extended is the Joying one including an extended navi_app.txt, extended player_app.txt, extended navi_audio_from_playstatus.txt.
The NoKill is the extended version where the normal functionality to kill all apps when going into "deep sleep" (turn of ignition), has been disabled.

2020-04-07 | 2020-04-07-com_syu_ms-ORG | 2020-04-07-com_syu_ms-ORG_extended | 2020-04-07-com_syu_ms-nokill | ( Zips, modified smali files, modified assets text files, some info)
2019-11-28 | 2019-11-28-com_syu_ms-ORG | 2019-11-28-com_syu_ms-ORG_extended | 2019-11-28-com_syu_ms-NoKill | ( Zips, modified smali files, modified assets text files, some info)
2019-09-17 | 2019-09-17-com_syu_ms-ORG | 2019-09-17-com_syu_ms-ORG_extended | 2019-09-17-com_syu_ms-NoKill | ( Zips, modified smali files, modified assets text files, some info)
2019-08-14 | 2019-08-14-com_syu_ms-ORG | 2019-08-14-com_syu_ms-ORG_extended | 2019-08-14-com_syu_ms-NoKill

----------------------------------------------------------------------------------------------------------------------------------------------------------------
Other mods
There are currently two mods for the radio: One very nice one from user @Soiski71 and one which I made.
The ORG version in this case is the one delivered with the Joying firmwares.

Radio | SC98531-Radio-ORG | SC98531-Radio-Mod (preview) | SC98531-Radio-Mod-Soiski71 (preview)

----------------------------------------------------------------------------------------------------------------------------------------------------------------
Combinations
These are combinations of above files which I found useful. Undoing them can be done by using one of the above ORG zips.
2019-09-17 | 2019-09-17-radio_mainserver | 2019-09-17-rootedboot_radio_mainserver
 
Last edited:

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
If everything goes wrong and your unit gets in a boot loop or stops on boot logo

- Download a fresh firmware from the Joying blog.
- Unzip it to an SD-card/USB-stick (as normal)
- Put the USB-stick/SD-card in your unit and "push" the Reset (RST) with a paperclip or something like that. When the boot logo appears, reset the unit again. Now the flashing process should start.
 
Last edited:

julien_blanche

Senior Member
Jan 14, 2010
181
111
See title: Only for SC9853i Joying/FYT 8.1 units.
Due to some changes in the flashing process since the previous PX5 and Sofia 3GR models it is now partly possible to mod your unit without root. (A custom Rom might be the next step, but I have my Joying 9853i unit only 3 days now.)

So you bought a 9853i unit finally, congratulations with your new unit and thank you for joining us with intel platform. I guess head unit currently on your bench not on your car ? Is this transformation only for developing purposes or after some time you are going to put it inside your car ?
Anyways thank you for your detailed guide, hope it continues :)
 

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
So you bought a 9853i unit finally, congratulations with your new unit and thank you for joining us with intel platform. I guess head unit currently on your bench not on your car ? Is this transformation only for developing purposes or after some time you are going to put it inside your car ?
Anyways thank you for your detailed guide, hope it continues :)

Actually Joying asked me to test the unit, do some bug tracing/finding and write a review. I requested a VW unit with a universal motherboard as my Skoda does not have SWCs, so I needed an external resistance-based SWC "thingy". Those do not work with the VW canbus motherboards. So they did send me such a "custom" unit. I only needed to pay the import taxes being 63 euros. I consider that a good bargain for a new unit. As far as I can see/check I have one with an IPS-screen. The screen is absolutely fabulous, the best I've ever seen, and with 10.1" quite big (I've seen small cars with smaller windscreens :) )
I got it Tuesday evening. Did some tests on the bench and installed it on Thursday in the car. Drove some 30 km Friday and did the above mentioned flashing ("another example") this morning.
So far, so good.
 
  • Like
Reactions: eXenic

thierry34

Senior Member
Jan 25, 2011
230
11
Montpellier
Actually Joying asked me to test the unit, do some bug tracing/finding and write a review. I requested a VW unit with a universal motherboard as my Skoda does not have SWCs, so I needed an external resistance-based SWC "thingy". Those do not work with the VW canbus motherboards. So they did send me such a "custom" unit. I only needed to pay the import taxes being 63 euros. I consider that a good bargain for a new unit. As far as I can see/check I have one with an IPS-screen. The screen is absolutely fabulous, the best I've ever seen, and with 10.1" quite big (I've seen small cars with smaller windscreens :) )
I got it Tuesday evening. Did some tests on the bench and installed it on Thursday in the car. Drove some 30 km Friday and did the above mentioned flashing ("another example") this morning.
So far, so good.
cool !! welcome to the joying club !!!! :cool::cool::cool::cool:
 

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
this seems to be an fantastic tweaking guide...altough too complicated for me :(
is it possible maybe, to have some "already cooked" files that can only be applied easily?
To be honest: i don't think it is complicated at all to do this yourself if you only want to replace a few apks with modded apks.
The complexity lies in the modding of the apks, and you have to make sure you use the correct main server version mod on the same firmware version.

All Joyings follow the same release firmwares (sometimes models are released having intermediate firmwares, but when a new release is published and you flash it, they are equal again) where it would be relatively easy to make some "ready to flash" Allapp.pkg files.
Joying compatibles sometimes have slightly different file names for the apks. As the Allapp.pkg will replace or add the apk with the same name, this will give errors. You will have 2 identical radio apks when it comes to the package name, in 2 different folders. Both will not work anymore in that case. See example below
Code:
Joying                         Zhan
000000000_com.syu.ms.apk       000000000_com.syu.ms.apk
180043001_com.syu.music.apk    180053002_com.syu.music.apk
180043001_com.syu.radio.apk    180053002_com.syu.radio.apk
 

NRGZ28

Retired Senior Mod & Senior RD
Apr 6, 2007
10,512
9,976
XDA-Developers
Very nice info! I just installed one of these units in my car this past couple of weeks and I'm really looking forward to making custom ROMs for them. Or at least, start with making custom APK's for the built in apps.
 

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
Very nice info! I just installed one of these units in my car this past couple of weeks and I'm really looking forward to making custom ROMs for them. Or at least, start with making custom APK's for the built in apps.

I'm also working on a custom rum. The only thing, but most important thing, going wrong is the flashing of the system partition. I sign it, I make a signed system.new.dat and then a system.new.dat.br, but it still gives a very weird error (and a soft-brick but that is easy to fix).
 

thierry34

Senior Member
Jan 25, 2011
230
11
Montpellier
i want to modify the june version to add the crruptoff files and modify the skipkillapp files to test. if i flash the firmware modify, is there a solution to not erase all i have in my unit ? (twipe_data ?)
 

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
i want to modify the june version to add the crruptoff files and modify the skipkillapp files to test. if i flash the firmware modify, is there a solution to not erase all i have in my unit ? (twipe_data ?)

If you do NOT add an updatecfg.txt to the usb-stick, but only the lsec6521update and the Allapp.pkg, nothing will be wiped.
The stuff inside your Allapp.pkg will be added or updated. Nothing more.

Any reason to stay on the June version?
 

thierry34

Senior Member
Jan 25, 2011
230
11
Montpellier
If you do NOT add an updatecfg.txt to the usb-stick, but only the lsec6521update and the Allapp.pkg, nothing will be wiped.
The stuff inside your Allapp.pkg will be added or updated. Nothing more.

Any reason to stay on the June version?

thanks for answer.

so, i put in usb key isec6521update, allapp.pkg only or i add the config file and the zip 6521 1 ?
stay on the june version just for test and because i really don't understand how to replace the set_rgb with apktool for the light on the side of the screen.
but i'll try the new version, for the phone call by "ok google" and to see what's different !!! and search the bugs !!! :):)
 
Last edited:

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
thanks for answer.

so, i put in usb key isec6521update, allapp.pkg only or i add the config file and the zip 6521 1 ?
stay on the june version just for test and because i really don't understand how to replace the set_rgb with apktool for the light on the side of the screen.
but i'll try the new version, for the phone call by "ok google" and to see what's different !!! and search the bugs !!! :):)

Only isec6521update and allapp.pkg. That is if you only want to replace some apks.
 

surfer63

Senior Member
May 4, 2010
3,771
1,453
Zwolle
hvdwolf.github.io
Is it windows 7 really a requirement or i can use windows 10?

I assume you talk about rooting the unit via the Readme.rtf in the developer.zip. In that case you posted in the wrong thread as that should be discussed in the "HowTo: Root Joying SC9853i Head Unit" thread. Not in this thread which is specifically about non-rooted units.
Anyway: The Readme.rtf says Windows 7+, which means Windows 7/8.x/10
 

mclaudio

Senior Member
Feb 12, 2010
1,082
68
Caldas da Rainha
I assume you talk about rooting the unit via the Readme.rtf in the developer.zip. In that case you posted in the wrong thread as that should be discussed in the "HowTo: Root Joying SC9853i Head Unit" thread. Not in this thread which is specifically about non-rooted units.
Anyway: The Readme.rtf says Windows 7+, which means Windows 7/8.x/10


yes sorry. send you pm ok?
 

mclaudio

Senior Member
Feb 12, 2010
1,082
68
Caldas da Rainha
Dear @surfer63, since i am having a hard time rooting, can i kindly ask if it is possible to share the following mods for my unit?
- Expand the hosts file to prevent ads, banners, hijackers, etc


is there anyway to completly disable the build in music player ? it does not show lyrics when ask to download or show album art. i use poweramp... but when i press the button on my steering wheel it always rotates between bluetooth, video player, music player, etc....can i disable the use of build in media player and use only radio, tunein online radio, video player and power amp?
thanks in advance
regards
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    That's actually not how it works.
    In the json list you specify frequencies, icons and city names. If the radio tunes into a sender, the app will look inside the json which city/cities have that same frequency and then you can pick one. In the default app are only a few Chinese cities possibly having totally different frequencies. That means there is nothing to select, not because this functionality is not available in the app (if it is a real Joying)

    Edit: So you change the json list and replace/add entries with your favorite radio station, its frequency and replace/add the icon with the icon image of your favorite radio station. And then you put the json file and icon image back into the apk.
    Yes, this is different from the radio app that I'm using. I have a TEyes SPro/CC2 which is an FYT unit similar to the Joying.

    This is the popup that I get when editing the stations available to the Radio app. I click on the top left and a prompt to enter the city is displayed. In the following image, it's currently set to Toronto. The app then populates the available stations from the JSON file where the city name matches the text that the user enters:

    Screenshot_2021-10-15.png


    I'm not sure whether or not the app I use can be used on the Joying models. I posted the apk for the radio I use earlier in the thread...page 29 or 30, I think.
  • 10
    See title: Only for SC9853i Joying/FYT 8.1 units.
    Due to some changes in the flashing process since the previous PX5 and Sofia 3GR models it is now partly possible to mod your unit without root.

    Some info to start with:
    (partly from 4pda, partly from a "hint" from @julien_blanche, mostly from own knowledge)

    Contents of a firmware zip:
    Code:
    6521_1.zip           # The zip that contains the boot.img; the system/vendor/oem partitions and a few other things.
    Allapp.pkg           # Special file that contains all FYT apps (actually a special XAR archive.)
    config.txt           # file comparible to the build.prop which can contain additional properties
    lsec6521update       # The binary that really does the update
    oem                  # Folder containing some additional apps
    Stm32ud.bin          # The MCU binary. It is not always in every firmware
    updatecfg.txt        # Contains instructions for the flashing process
    crruptoff            # Special file for "WiFi only". Not in the normal firmwares. Be careful!


    Some commands that can be put inside updatecfg.txt
    Code:
    twipe_all     # Wipe entire system
    twipe_data    # Will wipe data partition (but not /sdcard, internal memory). Wiping the /data partition will wipe all config, all 3rd party apps and updates of system apps. This is the same as a "reset to factory defaults"
    twipe_sd      # Will wipe internal memory /sdcard (but not the data partition)
    dellapp       # Remove all 3rd party apps
    make_updates  # Make an upgrade U-disk boot file
    test             # test unit and firmware before flash

    Some properties that can be put inside config.txt. Say you live in Brazil and you want your locale settings immediately on Brazil, you can add that, for example:
    Code:
    ro.product.locale = pt_BR

    The file crruptoff:
    If you have a unit with a 4G module, but you don't have 4G (or don't want to use it), you can use this file. Put one line in this crruptoff being "fixwifi" and save it to the sdcard/usb-stick you use for flashing.
    You can use it to get rid of the "No SIM" notification in your notification bar.
    Does not work anymore on the later firmwares. Chances are minimal but maybe it might work again "some day".

    The Allapp.pkg
    The Allapp.pkg file is a special XAR archive with a directory structure. You can use ApkPack.exe to create or extract it.
    Folder path: This is where your files are being extracted to, or packed from
    File path: This is the file that is being created (packed), or where the files are extracted from.
    All apks (*.apk) and all libraries (*.so) will be installed as system apks and libraries, which means you can't uninstall them, but on the SC9853i units they are installed under /oem and not under /system.
    Inside this Allapp.pkg you will also find two other files: fyt.prop and skipkillapp.prop.
    The fyt.prop is identical to the build.prop but gives the option to add extra properties or replace/modify properties in the build.prop.
    The skipkillapp.prop contains apps (package names) with values from -15 to 15.
    When going into "deep sleep" the packages not mentioned in this list will be killed. Applications in this list with positive values will absolutely be killed (unstable otherwise??). The ones with higher values first. The ones with values 1 and 0 as last, where the app with value 0 will be the last killed before going into deep sleep.
    The apps with negative values are considered system apps and will not be killed. In this case the most negative number (-15) has the highest priority. My assumption (not tested, not verified) is that negative numbers approaching 0 might be killed if the system needs the memory?
    So in other words: If you do not want that some of your apps are killed, you can add them to this "skipkillapp.prop" by their package name. Say you use @realzoulou's DAB-Z app, you would add a line for DAB-Z (com.zoulou.dab). Or for example if you are a Tasker user, which is normally killed as well:
    Code:
    com.zoulou.dab = -10
    net.dinglisch.android.taskerm = -10
    (I would suggest not using values like -15, -14, -13 to make sure you do not really interfere with the real system apps).
    And then you need to add this file to your own allapp.pkg

    The lsec_updatesh folder and lsec.sh script
    Practical applications:
    • Making patches, an alternative to creating the Allapp.pkg package.
    • Work on all folders in the unit (which Allapp.pkg cannot do).
    • Delete unnecessary files or applications (who uses the calculator app?), or overwite files like the fyt.prop or others.
    • Modify/overwrite config files that are otherwise not modifiable (like bluetooth config?)
    • Setting properties that normally require root/admin rights.
    • Creating backups of your partitions using the dd command. This can be handy on a device for which you do not have a firmware yet as backup.
    • Rooting your unit, also if you do not have a firmware from your supplier.
    • Make a Custom ROM by simply doing all kind of modifications after the "normal" firmware flash.

    See for more info about the "The lsec_updatesh folder and lsec.sh script" in post #228.

    Creating an Allapp.pkg and flash it to your device (post #2)
    Some pre-build flashable images (post #3)
    And if everything goes wrong and your unit ends up in a boot loop or doesn't get past the boot logo. (post #4)
    6
    Creating an Allapp.pkg and flash it to your device

    Use the (English) version of ApkPack.exe (english version attached) to unpack/repack an Allapp.pkg. (It also works with wine on Linux/MacOS)

    (See this youtube link for a really quick & dirty (and unsharp, sorry) video about what scrolls on your screen when flashing such a mini Allapp.pkg)

    (1) Quick example:
    • Create a folder Allapp
    • Copy some wanted apks or mods into the folder.
    • Use the ApkPack.exe to create the Allapp.pkg
    • Simply copy the "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
    • Put the USB-stick into your unit and it will recognise the update and flash it to your unit.
    • Other options:
      • Copy the "Allapp.pkg", (optional) "updatecfg.txt", (optional) "config.txt" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
      • In my case having a 4G unit without using 4G and wanting to use Google Assistant for calls: Copy the Allapp.pkg, config.txt (see above), crruptoff (see above) and lsec6521update onto a clean FAT32 formatted USB-stick.
      • Note that when NOT using an updatecfg.txt, nothing will be wiped on your unit. Only added/replaced.

    (2) Another example:
    • Create folder Allapp on your pc/laptop
      • add (2019-08-14) main server mod with extended navi_app.txt and "BT to background" hacks. (see my github repo. Be careful to choose the one for your specific firmware date)
      • add BW-RDS radio mod (see my github repo. Only choose version for Android 8.1 if you want full functionality)
      • add oandbackup (dk.jens.backup_305.apk) (Free and open source backup restore apk)
      • add latest MagiskManager-v7.3.2.apk
    • Use apkpack.exe (attached) to create a new Allapp.pkg by selecting the folder to be packaged, the name of the file being Allapp.pkg, and select button "Packed" (sloppy translation from Chinese)
    • Copy created "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted USB-stick.
    • Insert in your unit and the flashing process will start (Note: It will mention "Setting to factory defaults" before flash reboot, but it is really not doing that)
    • After the (very quick) flash and normal reboot, you will have 2 new apps and 2 modded apps.

    (3) Example for a FYT compatible SC9853i, like a Sinosmart or Zhan or "unnamed":
    You can also create your own Allapp.pkg, also with a modded Joying apk as the apks are actually identical, but there is one big naming issue to take into account!
    Even though the apks are identical having the same package name, they have different apk names. A normal install will check for the package name and replace the apk with that same package name, whatever its apk name (think of versions or build time stamps behind the the "normal" name). The flashing method simply looks at the apk name and will create an /oem/app/<apk_name>/<apk_name>.apk. In this case versions numbers of build timestamps will create again and again a new folder with the exact same apk and none will work.
    As an example for the radio app:
    • Joying: 190043001_com.syu.radio.apk
    • Sinosmart: 190042001_com.syu.radio.apk
    • "Some" unbranded: 190101001_com.syu.radio.apk
    Again: The apks are exactly the same but have a different name. If you simply flash one next to the other, both will not work anymore as both have the same internal package name being "com.syu.radio". So you have no radio at all.
    So, how to create an Allapp.pkg with a modded Joying apk for your FYT compatible SC9853i unit?
    • Check the name of your unit's radio app (or BT, Video, Music app). (If you don't know how you can use my HWGet_info.apk and open the resulting HWget_info.zip and look inside the "oem_listing.txt")
    • Find the name of the modded Joying app.
    • Rename the modded Joying app to the name of your app. So for example for Joying-> Sinosmart radio app: rename 190043001_com.syu.radio.apk to 190042001_com.syu.radio.apk (Joying to Sinosmart)
    • Create a folder Allapp
    • Copy the modded and now renamed Joying radio apk into the folder (repeat if relevant for other mods).
    • Use the ApkPack.exe to create the Allapp.pkg
    • Simply copy the "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
    • Put the USB-stick into your unit and it will recognise the update and flash it to your unit.
    • Also create an Allap.pkg for your original app so you can always flash back the original app if you want (or need) to.
    6
    Some pre-build flashable images

    Only for real Joying SC9853i units. Other FYT compatibles are not supported.
    All SC9853i FYT models are actually the same, but boot images are mostly different and apks have different names. In the latter case you would have 2 identical apks with the same package name, but with a different apk name residing in different folders. Neither of them will work anymore as Android doesn't know which one is the correct one.

    The zips that can be found in this post can be directly unzipped to a clean, empty Fat32 formatted USB-stick or SD-card. You do not need to be rooted and you don't need my JET apk.
    When this USB-stick or SD-card is inserted into your unit, the unit will recognize it as a flashable firmware and start flashing the files to your unit.

    Notes:
    • These flashable firmware files will leave all your installed apps and settings as they are. Only the files in these Allapp.pkg files will be overwritten.
    • The zips containing boot images will only overwrite the boot image. All apps and settings remain as they are.
    • The "combi" zips are just combinations of possible mods and/or boot images. They behave the same as the previous two.
    • The zips that can be downloaded from this post are all on one of my github repositories. You can find it here: SC98531BinRepo.
    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Boot images
    2019-11-28 | 20191128-rooted-boot-image (thanks to @rigattoni) | 20191128-normal-boot-image
    2019-09-17 | 20190917-rooted-boot-image | 20190917-normal-boot-image
    2019-08-14 | 20190814-rooted-boot-image (thanks to @julien_blanche)

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Main server apk mods (the 190000000_com.syu.ms.apk)
    The ORG version is the apk as delivered by Joying in their firmwares.
    The ORG_extended is the Joying one including an extended navi_app.txt, extended player_app.txt, extended navi_audio_from_playstatus.txt.
    The NoKill is the extended version where the normal functionality to kill all apps when going into "deep sleep" (turn of ignition), has been disabled.

    2020-04-07 | 2020-04-07-com_syu_ms-ORG | 2020-04-07-com_syu_ms-ORG_extended | 2020-04-07-com_syu_ms-nokill | ( Zips, modified smali files, modified assets text files, some info)
    2019-11-28 | 2019-11-28-com_syu_ms-ORG | 2019-11-28-com_syu_ms-ORG_extended | 2019-11-28-com_syu_ms-NoKill | ( Zips, modified smali files, modified assets text files, some info)
    2019-09-17 | 2019-09-17-com_syu_ms-ORG | 2019-09-17-com_syu_ms-ORG_extended | 2019-09-17-com_syu_ms-NoKill | ( Zips, modified smali files, modified assets text files, some info)
    2019-08-14 | 2019-08-14-com_syu_ms-ORG | 2019-08-14-com_syu_ms-ORG_extended | 2019-08-14-com_syu_ms-NoKill

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Other mods
    There are currently two mods for the radio: One very nice one from user @Soiski71 and one which I made.
    The ORG version in this case is the one delivered with the Joying firmwares.

    Radio | SC98531-Radio-ORG | SC98531-Radio-Mod (preview) | SC98531-Radio-Mod-Soiski71 (preview)

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Combinations
    These are combinations of above files which I found useful. Undoing them can be done by using one of the above ORG zips.
    2019-09-17 | 2019-09-17-radio_mainserver | 2019-09-17-rootedboot_radio_mainserver
    3
    If everything goes wrong and your unit gets in a boot loop or stops on boot logo

    - Download a fresh firmware from the Joying blog.
    - Unzip it to an SD-card/USB-stick (as normal)
    - Put the USB-stick/SD-card in your unit and "push" the Reset (RST) with a paperclip or something like that. When the boot logo appears, reset the unit again. Now the flashing process should start.
    3
    Alright, I think I got it, it was actually easier than I thought. I just kept tracing the error logs to see where they get called from until I reached the place where the connection magic happens. I tested by connecting a Bluetooth speaker to the radio, it says pairing successful but it doesn't route audio to it, but I'm not surprised considering the radio is not really expecting it. I'll try a ps4 controller tomorrow.