FarFISH LogoDocs

FarFISH Android App

The FarFISH Android App delivers the complete FarFISH experience as a native mobile application for Android devices, providing seamless wallet integration, optimized performance, and mobile-first design.

Overview

The Android application packages the full FarFISH web experience into a native mobile wrapper, offering:

  • Native Mobile Experience: Optimized for Android devices
  • Deep Link Support: Seamless wallet app integration
  • Full Feature Set: Complete access to minting, staking, rewards, and leaderboard
  • Offline Viewing: View owned assets and stats without internet connection
  • Direct Distribution: Available through direct APK download from farfish.xyz

How to Get the App

Direct APK Download

Download and install the FarFISH Android app:

  1. Visit farfish.xyz on your Android device
  2. Navigate to the download section
  3. Download the latest APK file (app-release.apk)
  4. Open the downloaded file to install
  5. Grant "Install from Unknown Sources" permission if prompted
  6. Open the app once installation completes

Benefits:

  • Always get the latest version
  • No app store dependencies
  • Faster updates
  • No Google account required

Features

The Android app provides the same complete feature set as the Web App:

NFT Minting

  • 16 Unique Tokens: Four rarity tiers with different rewards
  • Weighted Random Selection: Fair minting distribution
  • Supply Tracking: Real-time progress display
  • Mobile-Optimized UI: Touch-friendly minting interface

For rarity details, see NFT System Guide.

NFT Staking

  • Lock Durations: 30, 90, 180, or 360 days
  • Reward Tiers: Based on rarity and lock period
  • Multiple Stakes: Manage multiple staked NFTs
  • Claim Interface: Easy reward claiming after unlock

Daily Reward Chests

  • Bronze: 3 FRH every 24 hours
  • Silver: 6 FRH every 24 hours (requires stake)
  • Visual countdown timers

See Daily Rewards Guide for streak building.

Leaderboard

  • Top 100 Rankings: Global leaderboard by total rewards
  • Your Position: Highlighted if ranked
  • Pull to Refresh: Manual leaderboard refresh
  • Referral Display: See referral counts

Referral System

  • Share Links: Native Android share functionality
  • QR Code: Generate QR code for in-person referrals
  • Instant Rewards: 20 FRH for both referrer and referee
  • Unlimited Referrals: No caps on referral earnings

Profile & Stats

  • Wallet Stats: NFTs owned, staked, streak, rank
  • Task Tracking: View completed tasks and progress
  • FAQ Access: In-app help documentation
  • Manual Referral Binding: Enter code if missed during signup

Wallet Connection

The Android app provides seamless wallet integration through deep links:

  1. Initiate Connection: Tap "Connect Wallet" in app
  2. Choose Wallet: Select your preferred wallet provider
  3. App Switch: Android automatically opens wallet app
  4. Approve Connection: Confirm in wallet app
  5. Return to FarFISH: Automatically returns after approval

Supported Wallets

The app works with all major mobile wallets:

  • MetaMask: MetaMask Mobile app
  • Coinbase Wallet: Coinbase Wallet mobile
  • Trust Wallet: Trust Wallet app
  • Rainbow: Rainbow wallet
  • WalletConnect Compatible: 300+ wallets supporting WalletConnect protocol

The app handles these URI schemes:

  • wc:// - WalletConnect connection URIs
  • farfish://wc - App-specific WalletConnect wrapper
  • farfish:// - General app deep links
  • ethereum: - Ethereum payment URIs

Deep linking allows the FarFISH app to seamlessly open your wallet app and return after you approve transactions, providing a smooth mobile experience.

System Requirements

Android Version

  • Minimum: Android 9.0 (Pie)
  • Target: Android 14
  • Recommended: Android 10.0 or higher for best experience

Device Specifications

  • Storage: 50 MB minimum free space
  • RAM: 2 GB minimum
  • Screen: Any screen size supported (optimized for 5-6 inch displays)
  • Internet: Required for blockchain operations

Permissions

The app requests minimal permissions:

PermissionPurposeRequired
Internet AccessConnect to blockchain and backendYes
Network StateCheck connectivity statusYes
CameraQR code scanning for WalletConnectOptional
Install PackagesApp updates (APK version only)Optional

The app does not request storage, location, contacts, or any unnecessary permissions. Camera access is only used for scanning WalletConnect QR codes.

Technical Details

Architecture

The Android app uses a native wrapper architecture:

  • Native Container: Java-based Android application
  • Web Content: Loads full FarFISH web app from app.farfish.xyz
  • JavaScript Bridge: Two-way communication between native and web layers
  • Hybrid Approach: Combines native mobile features with web flexibility

Network Configuration

  • HTTPS Only: All traffic encrypted (no cleartext except localhost)
  • Safe Browsing: Google Safe Browsing enabled
  • SSL Error Handling: Never proceeds on SSL certificate errors
  • Multiple RPC Endpoints: Fallback for blockchain connection reliability

JavaScript Bridge

The app exposes native Android functionality to the web layer:

javascript
// Available via window.Android in the app

// Get device information
window.Android.getDeviceInfo()

// Open external URLs in browser
window.Android.openExternalUrl(url)

// Show native toast notifications
window.Android.showToast(message)

// Check if running in Android app
window.Android.isAndroidApp() // returns true

// Report errors to native layer
window.Android.reportError(type, message, stack)

Performance Features

  • Page Load Timeout: 15-second timeout with automatic retry
  • Error Recovery: Automatic error page after critical failures
  • Progress Indicators: Visual feedback during loading
  • Pull to Refresh: Manual page refresh gesture
  • Caching: Assets cached for faster subsequent loads

Distribution & Updates

APK Distribution

  • Direct Download: Available from farfish.xyz/app-release.apk
  • Update Checker: App checks GitHub for new releases
  • Download Prompt: Notifies when update available
  • Manual Install: User installs update APK manually
  • Version Display: Current version shown in app

The app includes an update checker that notifies you when new versions are available. Simply download and install the new APK from farfish.xyz to update.

Security Features

Application Security

  • HTTPS Enforcement: All web traffic uses HTTPS encryption
  • Safe Browsing: Protects against malicious websites
  • No File Access: Cannot access arbitrary files on device
  • Sandboxed Environment: App runs in Android security sandbox
  • Code Obfuscation: Release builds use ProGuard code protection

Wallet Security

  • Non-Custodial: App never accesses private keys
  • Signature Verification: All transactions require wallet approval
  • Deep Link Validation: Verifies wallet app authenticity
  • No Key Storage: Private keys remain in wallet app only

User Privacy

  • No Tracking: App does not include analytics SDKs
  • No User Data Collection: Only wallet address used for identity
  • No Permissions Abuse: Minimal permissions requested
  • Local Storage Only: Settings stored locally, not uploaded

Differences from Web App

Advantages of Android App

  • ✅ Native Feel: Feels like a true Android application
  • ✅ Deep Links: Seamless wallet app switching
  • ✅ Home Screen Icon: Launch directly from home screen
  • ✅ Splash Screen: Branded launch experience
  • ✅ Background State: Can pause and resume app
  • ✅ Share Integration: Native Android share functionality

Limitations vs Web

  • Manual Updates: Requires downloading new APK versions manually
  • Storage Required: Needs installation space (~20-50 MB)
  • Android Only: iOS users must use web app

Troubleshooting

Common Issues

Wallet Not Connecting:

  • Ensure wallet app is installed
  • Try WalletConnect instead of direct connection
  • Check that wallet app supports Base network

Page Load Errors:

  • Check internet connection
  • Pull down to refresh
  • Clear app data in Android settings if persistent

App Crashes:

  • Ensure Android 9.0 or higher
  • Try reinstalling the app
  • Report issue if persistent

Updates Not Working:

  • Check farfish.xyz for the latest APK version
  • Download and install the new APK manually

Best Practices

Mobile Usage

  • Use WiFi: Reduce mobile data usage during minting and staking
  • Keep Updated: Install updates for bug fixes and features
  • Wallet App Ready: Keep wallet app installed and updated
  • Battery Optimization: Exempt FarFISH from aggressive battery restrictions

Security

  • Download Safely: Only from farfish.xyz official website
  • Verify Permissions: Review requested permissions before granting
  • Wallet Security: Use strong PIN/biometric on wallet app
  • Keep Updated: Install security updates promptly

Who Should Use the Android App

Choose the Android app if you:

  • Primarily Mobile: Use smartphone more than desktop
  • Want Native Experience: Prefer app feel over browser
  • Frequent User: Use FarFISH daily and want quick access
  • Wallet on Mobile: Have wallet app installed on phone
  • Offline Viewing: Want to view stats without constant connection