[Samsung Galaxy J3 (2016) ROMs, Kernels, Recoveries] Rom2788:
Hi Procrastinus,

I understand you start and i don't know your computing level.

I have SM-J320FN too.

# Main links to follow (for J320FN):

(XDA) J3 2016 sub-forum (pay attention to the different J3 versions like J320F/J320FN/etc).

(XDA) notnoelchannel is an active developer (in 2024) for J320FN.

(XDA) djeman is an active developer for J320FN.

# About custom roms (for J320FN):

I "understand" Android 7.1.2 (Nougat) is the latest actually for J320FN. I read developers are blocked since many drivers are missing for Android 8 (Oreo), CPU compatibility problems, etc.

Please note topic files (attachments or download links) are not always up to date or are sometimes broken. Autors/users add new download links sometimes in comments (have a look).

# Custom roms up to date (for J320FN):

So, first you tried to install LineageOS 13 (Android 6.0.x Marshmallow).

Then you installed Resurrection Remix 5.8.5 (Android 7.x Nougat).

Consider to look at LineageOS 14.1 (Android 7.1.2 Nougat):

New topic (started 2024-05-18).

Old topic (but still active, with 144 pages and usefull comments).

# Main steps for flash (for J320FN):

NB: i hope i haven't forgotten anything important. Generally some of these steps are explained in custom recovery/rom topics.

1. prepare your computer

1.1 install adb drivers (be careful, lot of fakes on internet)

* on Windows (or Virtual Machine): 15 seconds ADB installer, Minimal ADB and Fastboot, others tools ... (i don't know for latest, maybe search "adb" on XDA) or install manually.

* on Linux: maybe with packages manager like Synaptics ? or install manually.

1.2 install flash software

* on Windows (or Virtual Machine): Odin (able to do the following steps)

* on Linux: Heimdall (don't know if able to do ALL the following steps). Maybe you can look at JOdin3CASUAL and mAid too.

2. unlock your bootloader (with previous installed software in step 1.2): then you are be able to modify your phone (recovery, custom rom, etc). Require to enabled OEM Unlock in Android settings.

3. install a recovery (with previous installed software in step 1.2). For those i know (updated for J320FN), you have choice between:

* TWRP (very popular actually): the latest version 3.7.0-9.0 (updated 2024-05-12).

* CyanogenMod (very popular in the past, seem's resurrect): the latest version cm-12.1 (in development) (updated 2024-04-20).

* OrangeFox: the latest version here (updated 2023-11-03).

4. make a (full) Nandroid backup (with recovery installed in step 3.): backup everything on your phone (make an image) and copy it on your computer. Then you are able to restore your phone if needed. Maybe look for EFS partition backup too.

5. flash a custom rom (with recovery installed in step 3.). Maybe look at f2fs format option (if provided, for performance) and internal/microSD fusion (if needed, to extend storage).

6. install magisk (if needed): can be very helpfull for next steps like root, gapps/microG, etc. I think (not sure) there is no topic to install on J320FN, so you need to read and adapt from magisk website.

7. root (if needed): then you obtain full rights on your phone. Many tools (depend of used rom) exist, seem's easier with magisk (look at step 6.) notably to manage some root conflicts (when you use some bank apps, etc).

8. install gapps/microG (if needed):

* gapps (many providers): opengapps, bitgapps, nikgapps, flamegapps, mindthegapps (LineageOS), etc

* microG (an opensource alternative for replace gapps): a little bit hard to understand and install on J320FN (sometimes easier for others phones) but very interesting. Note some apps may not function properly with microG (you can check compatibility with Sapio). There is no topic to install on J320FN (maybe i will do it if i success to make microG work fully), so you need to read and adapt from microG website. I read install microG is easier with magisk (look at step 6.). It exists some scripts too, like microG unofficial installer, NanoDroid, etc (i don't know if these scripts work with J320FN).