Client and backend. Every class listed here is shared: the same code is compiled into your app and into your server.

package com.codename1.crypto.evm

Ethereum and other EVM chains: EvmAddress with the EIP-55 checksum, EvmTransaction for legacy (EIP-155), access-list (EIP-2930) and dynamic-fee (EIP-1559) transactions, Abi encoding, PersonalSign (EIP-191), TypedData (EIP-712) and Erc20 token calls.

Types

class AbiThe Solidity contract ABI: function selectors, call data and return values.
class Erc20Call data for ERC-20 tokens (USDC, USDT, DAI…).
class EvmAddressA 20-byte address on Ethereum or any EVM chain (Polygon, Arbitrum, Base, BNB Chain…).
class EvmTransactionAn EVM transaction in any of the three envelopes nodes accept: legacy (with EIP-155 replay protection), EIP-2930 access-list (type 1) and EIP-1559 dynamic-fee (type 2).
class PersonalSignEIP-191 personal_sign messages, the “Sign in with Ethereum” and wallet-ownership proof, and the 65-byte r || s || v signatures EVM wallets exchange.
class TypedDataEIP-712 typed structured data: the eth_signTypedData_v4 document permits, orders and meta-transactions are signed as.