Android resource file parsing & writing

Related tags

Mobile arsc
Overview

arsc

arsc is a Rust library that provides the ability to parse and write Android resource file (arsc)

[dependencies]
arsc = "0.1"

Compiler support: rustc 1.59+

Example

use arsc::{parse, write};

fn main() -> std::io::Result<()> {
  let arsc = parse("/resources.arsc")?;
  let _ = write(&arsc, "/output.arsc")?;
  Ok(())
}

Getting Started

This section talks about how to compile the project

Prerequisites:

  • Rust 1.59 or above
  • Cargo
  • Git

Compile

cd SOME_DIR
git clone https://github.com/YaxinCheng/arsc.git
cd arsc
cargo build --release

You might also like...
Rudroid - Writing the World's worst Android Emulator in Rust ๐Ÿฆ€
Rudroid - Writing the World's worst Android Emulator in Rust ๐Ÿฆ€

Rudroid - Writing the World's worst Android Emulator in Rust ๐Ÿฆ€ Introduction Rudroid - this might arguably be one of the worst Android emulators possi

Low effort scraping Python's pickle format in Rust. It is to complete pickle parsing as BeautifulSoup was to complete HTML parsing.

repugnant-pickle Because it is, isn't it? This is a Rust crate for dealing with the Python pickle format. It also has support for opening PyTorch file

S-expression parsing and writing in Rust

rsexp S-expression parsing and writing in Rust using nom parser combinators. This implemantion aims at being compatible with OCaml's sexplib. The main

File system enumerator and monitor for Android.

File system enumerator and file monitor for Android. Built to be compatible with other command line utilties! This tool was created to somewhat automa

A fast, low-resource Natural Language Processing and Text Correction library written in Rust.

nlprule A fast, low-resource Natural Language Processing and Error Correction library written in Rust. nlprule implements a rule- and lookup-based app

A Minecraft Java Edition to Bedrock Edition resource pack convertor in Rust

j2be A Minecraft Java Edition to Bedrock Edition resource pack convertor in Rust How to use Note: This project is still in development Run cargo build

๐Ÿ“Š Fetch & monitor your server's resource usage through Lua

๐Ÿ“Š gmsv_serverstat Simple serverside binary module which can expose information about system resource usage to Lua. Installation Download the relevant

Quick Pool: High Performance Rust Async Resource Pool

Quick Pool High Performance Rust Async Resource Pool Usage DBCP Database Backend Adapter Version PostgreSQL tokio-postgres qp-postgres Example use asy

An in-depth resource to learn Rust ๐Ÿฆ€

Learning Rust ๐Ÿฆ€ Hello friend! ๐Ÿ‘‹ Welcome to my "Learning Rust" repo, a home for my notes as I'm learning Rust. I'm structuring everything into lesson

An ability / resource / cooldown management library for Bevy.

About leafwing-abilities is an opinionated, ready-to-use Bevy library and plugin for handling abilities. It features: cooldown tracking resource manag

Learn-rust - An in-depth resource to learn Rust ๐Ÿฆ€

Learning Rust ๐Ÿฆ€ Hello friend! ๐Ÿ‘‹ Welcome to my "Learning Rust" repo, a home for my notes as I'm learning Rust. I'm structuring everything into lesson

Shred - Shared resource dispatcher

shred - Shared resource dispatcher This library allows to dispatch systems, which can have interdependencies, shared and exclusive resource access, in

defmt is a highly efficient logging framework that targets resource-constrained devices, like microcontrollers
defmt is a highly efficient logging framework that targets resource-constrained devices, like microcontrollers

defmt defmt ("de format", short for "deferred formatting") is a highly efficient logging framework that targets resource-constrained devices, like mic

A Rust library for reading asset files and resource packs for any version of Minecraft

minecraft-assets A Rust library for reading asset files and resource packs for any version of Minecraft. Example use minecraft_assets::api::AssetPack;

rusty-riscy is a performance testing and system resource monitoring tool written in Rust to benchmark RISC-V processors.

rusty-riscy rusty-riscy is a performance testing and system resource monitoring tool written in Rust to benchmark RISC-V processors. Objectives To cre

Allows deploying modules to Aptos under resource accounts.

Aptos Deployer Module containing helpers for deploying resource accounts. Resource accounts allow the module to sign as itself on-chain, which is usef

Simple rust asset handling derive macro for enums, and a proc-macro learning resource!

asset-derive Summary โ€ข Todos โ€ข Docs Summary Simple Rust asset loading derive macro for Enums, and a resource for learning proc-macros! Please feel fre

A resource monitor in your browser, in Rust
A resource monitor in your browser, in Rust

axact A resource monitor in your browser, so you can view the state of a VM or some other remote host. Built with Rust & Preact, see the video: https:

Releases(0.1.4)
  • 0.1.4(Apr 18, 2022)

    • Add option to parse from a seek-able reader (parse_from<R: Read + Seek>(R) -> Result<Arsc>)
    • Add option to write to a writable output (write_to<W: Write>(&Arsc, &mut W) -> Result<usize>)
    • Add integrated tests with sample arsc files
    Source code(tar.gz)
    Source code(zip)
  • 0.1.3(Apr 12, 2022)

Owner
Yaxin Cheng
Developer
Yaxin Cheng
Android / iOS app with shared Rust logic

Rust core for native Android and iOS apps [TODO iOS badge] This is an example that shows how to use a shared Rust core in native Android and iOS apps.

Ivan Schรผtz 193 Dec 5, 2022
Cross-platform GUI written in Rust using ADB to debloat non-rooted android devices. Improve your privacy, the security and battery life of your device.

Universal Android Debloater GUI DISCLAIMER: Use it at your own risk. I am not responsible for anything that could happen to your phone. This software

w1nst0n 7k Jan 7, 2023
Android-related tools for building and developing applications ๐Ÿ› 

Rust Android Tools Android-related tools for building and developing applications: Name Description Status aapt2 Android Asset Packaging Tool โœ… bundle

DodoRare 6 Dec 31, 2022
android-pathfinding

android-pathfinding Android pathfinding dependencies { implementation 'com.github.planet0104:android-pathfinding:1.0.0' } int[][] grid = new i

Jia Ye 1 Dec 17, 2021
๐Ÿค–๐Ÿฆ€ A rust native replacement for Android's `sdkmanager`

???? A rust native replacement for Android's `sdkmanager`

Traverse Research 13 Dec 13, 2022
An Android application for ruffle.rs

This is a native Android application for Ruffle. It is in a very early stage. Prebuilt APKs The latest (successful) Actions run (here) should have a d

Tร–Rร–K Attila 28 Dec 21, 2022
Android / iOS app with shared Rust logic

Rust core for native Android and iOS apps [TODO iOS badge] This is an example that shows how to use a shared Rust core in native Android and iOS apps.

null 193 Dec 5, 2022
Run all your Linux graphical apps on Android ๐Ÿ’–โœจโœจโœจ

Waylovely Run all your Linux graphical apps on Android ?? โœจ โœจ โœจ The Android windowing system is different than those in desktop operating systems. In

Waylovely Project 14 Nov 23, 2022
Tokio based client library for the Android Debug Bridge (adb) based on mozdevice

forensic-adb Tokio based client library for the Android Debug Bridge (adb) based on mozdevice for Rust. Documentation This code has been extracted fro

null 6 Mar 31, 2023
Rust implementation of NearbyShare/QuickShare from Android for Linux.

rquickshare NearbyShare/QuickShare for Linux (WIP) How to use rquickshare offers two options for using its file sharing capabilities: command line (CM

Martin Andrรฉ 3 Feb 28, 2024