Один из самых удобных способов записать данные это использование готовых форматов, такие как JSON или YAML.
Из плюсов такого подхода стоит отметить вот что:
🔸 готовый, повсеместно используемый и поддерживаемый формат
🔸 простой и понятный файл, удобочитаемый для человека
🔸 можно легко редактировать в любом текстовом редакторе без специальных программ и библиотек
Но есть и минусы
🔹 затраты времени при записи файла (кодирование данных в нужный формат строки)
🔹 затраты времени при чтении файла (декодирование данных в Python объекты)
🔹 размер файла увеличивается из-за разметки данных (скобки, запятые, переносы, отступы...)
🔹 перед записью все данные должны быть помещены в память в полном объёме (не всегда)
🔹 при чтении необходимо считать весь файл в память и только потом декодировать данные
Если нужно писать немного данных в несколько файлов, то затраты по времени не ощутимы. Обычно это файлы конфига или какие-либо метаданные. Это отличный вариант под такие задачи.
Есть и другой поход к записи файлов - это бинарные файлы. Используется, когда данных достаточно много и никто их не собирается читать глазками😳.
🔸 очень быстрая запись
🔸 чтение значительно быстрей чем JSON, YAML итд
🔸 размер файла значительно меньше, так как нет разметки
🔸 можно записывать данные по мере поступления не загружая всё в память
🔸 можно извлечь любую часть данных независимо
Из минусов
🔹 нужно определить свой формат записи данных (если не используете готовую спецификацию определённого формата)
🔹 не получится открыть файл и визуально понять что там записано, а для чтения файла потребуется знать его спецификацию.
🔹 не так-то просто создать такой файл без специальной библиотеки
В таком виде удобно записывать большой массив любых однородных данных. Например, мониторинг валютной биржи или кэшированная анимация 3D геометрии.
(Это не означает что нельзя записать данные разного типа, просто это будет не так удобно)
Представьте себе JPG-картинку. По сути это немного мета-информации и большой массив пикселей. Тоже самое со звуком или видео файлом. Поэтому, если вы попробуете открыть картинку в текстовом редакторе вы увидите что-то вроде такого
f15d cd29 a564 4578 ...
09e2 9bc4 a696 1253 ...
84e9 4de1 3b23 c24a ...
2534 5161 28e0 709d ...
...
Это и есть записанные байтики. И для их чтения требуется определённый софт который знает что с ними делать. Под каждый тип файла.
К чему это я? Читайте в следующем посте...
#tricks#basic
Hello everyone ! Long time without an announcement from your favorite frenchie (@Onelots)
As you know, we try to be as transparent as possible with you.
That's why today we decided to tell you how much money goes in and goes out the project.
As you probably know, about 1 year ago (May 2025) we moved from the "classic" rom scheme (every maintainer builds and send his zips on source forge) to a new one, using a dedicated server to build for all the devices, and cloudflare's content delivery network to provide you the builds as fast as possible all around the world.
This system had many advantages, such as :
- Fast releases (the server is huge)
- Consistent releases (since the sources are always the same as for the other devices on the server)
- Way more security : No one has the signing keys anymore, only the server.
But all this has a cost, and we felt like the community deserved to know what costs how much.
This "1 year period" is the one I used to do this table : From May 2025 to April 2026.
🔊 Please note : We are not begging for money! It's quite the opposite, actually. This message is there to thank you for your support. As you will see in the image below, the people who supported us really helped us to keep the ROM alive.
I'm obviously open to the discussion if anyone has a question about the table I sent. Just ping me and I'll be happy to reply !
#KeepEvolving#EvolutionX
#EvolutionX#UNOFFICIAL#A15#diting
EvolutionX 10.7 | UNOFFICIAL | Android 15
Updated: 29/6/2025
▪️Download: Gdrive | Mirror
▪️Screenshots
▪️Support
Changelogs:
• Sync last source
• Voip volume control problem fixed
• All new infinityx features have been added
• Optimized things for better performance
• Xiaomi camera Support
• Added Sony dolby
• KSU Support
WARNING
It is necessary to clean flash
Credits:Here
By@Jezzay97 | Donate
Follow@xiaomi_12tpro_updates
Join@xiaomi12tpro_chat
#EvolutionX#UNOFFICIAL#A15#diting
EvolutionX 10.7 | UNOFFICIAL | Android 15
Updated: 4/6/2025
▪️Download: Gdrive | Mirror
▪️Screenshots
Changelogs:
• June 2025 security patches have been merged into our Android 15 QPR2 branch. The latest version is now 10.7. As a reminder, all related Play integrity spoofing in the ROM have been removed already. All reports regarding certification failing will be ignored
• Switched to Yuki kernel oss
• kernel is now compiled with yuki clang 21 optimized by klozz
• Has the visual bug of negative battery percentage been fixed?
• The entire tree has been overrun. performance has been optimized and improved, such as micro lag.
• New thermal system
• Override doze mode support
• Remove wifilearner HIDL entry from manifest
• and other internal changes
• Add support for spatial audio
• Xiaomi camera Support
• Dolby audio by default
• KSU Support
CLEAN FLASH MANDATORY
Credits:Here
By@Jezzay97 | Donate
Follow@xiaomi_12tpro_updates
Join@xiaomi12tpro_chat
#EvolutionX#UNOFFICIAL#A15#diting
EvolutionX 10.6 | UNOFFICIAL | Android 15
Updated: 31/5/2025
▪️Download: Gdrive | Mirror
▪️Screenshots
▪️Support
Changelogs:
• Sync last source from evox
• sepolicy: Allow fingerprint hal to read system dmabuf device
• switch to common AIDL IR service
• HBM removed and display saturation
• And other minor changes
• Rebase Xiaomi Parts
• Xiaomi camera Support
• KSU Support
Credits:
@TeamMEX_XDA
@ArianK16a
@Omar99A
By@Jezzay97 | Donate
Follow@xiaomi_12tpro_updates
Join@xiaomi12tpro_chat
#EvolutionX#UNOFFICIAL#A15#diting
EvolutionX 10.3.1 | UNOFFICIAL | Android 15
Updated: 20/3/2025
▪️Download: here
▪️Screenshots
▪️KSU
Changelogs:
• Added FEAS support
• Fingerprint fixes, not sure if this fixes fingerprint issues for some users.
• March security patch updated
• Sync last source
• Integrity passed
Notes:
• QPR2 is not yet ready by the evolution working group. So we still have to wait.
Credits:
Thanks to @Mohammadnt96 and @TeamMEX_XDA
By@Jezzay97 | Donate
Follow@xiaomi_12tpro_updates
Join@xiaomi12tpro_chat
#EvolutionX#UNOFFICIAL#A15#diting
EvolutionX 10.3 | UNOFFICIAL | Android 15
Updated: 6/3/2025
▪️Download: here
▪️Screenshots
Changelogs:
• March patches are now available in Google source. However, it seems this is A15 QPR2 with all the changes made. We will be waiting for LineageOS this time before merging anything as it's sure to break a lot of the current code we have.
Credits:
Thanks to @Mohammadnt96 and @TeamMEX_XDA
By@Jezzay97 | Donate
Follow@xiaomi_12tpro_updates
Join@xiaomi12tpro_chat