Enabling Install Updates in F Apps

Jul 18, 2024

Lecture Notes: Enabling Install Updates in F Apps

Introduction

  • Speaker: Masahi, founder of Open C (Free CICD service for F).
  • Relevant Links: Join their Discord Channel, learn about Open C at opci.io.
  • Background: Former IBM Software Engineer and startup co-founder. Now an organizer of FR Tokyo in Japan.
  • Disclaimer: Demos run on MacBook Pro M Max 64 GB, iPhone 12 pixel Pro.
  • Today's Goal: Understanding what cfish is, how sh works, usage in production, and pricing of sh.

Overview of FR (Fluter)

  • Definition: Open-source framework by Google for building natively compiled multi-platform applications from a single code base.
  • Supported Platforms: iOS, Android, web, Linux, macOS, Windows, and even TV OS.
  • Benefits: One codebase for multiple platforms.

What is Cod Push?

  • Explanation: Tool to update F apps instantly over the air without needing store approvals.
  • Process: Fix bugs/new features -> send code directly to users without store review.
  • Benefits: Significant reduction in update time compared to store approval which can take days or weeks.
  • Drawbacks: Cannot change native code (iOS: Swift, Android: Kotlin) due to store policies.
  • Demo: Cod push demonstrated with changes in the Flutter counter app.

Cod Push Practical Insights

  • Key Functionality: Changes DO code (Flutter widget code) but can't change native code.
  • Limitations: Can't use native code upgrade, support for asset change pending.
  • Important Note: Avoid deceptive practices like changing app's core functionality post-store approval.
  • Risk Management: Use staging and in-depth testing before final production push.

Showing How Cod Push Works

  • Architecture: Sho is a fork of the FR engine adding Cod Push functionality.
  • Components: Sho CLI, modified FL engine, and cloud infrastructure.
  • Process: Creating builds, performing code push, and managing updates via Sho web dashboard.
  • Example Commands:
    • sh release android/ios: Create release build
    • sh patch android/ios: Patch updates to end-users
    • sh preview: Fast local testing of builds

Workflow Integration

  • GitHub Actions: Integration example given for using Sho in GitHub CI/CD.
  • Customization: Sh workflows can be flexibly integrated into existing CI/CD pipelines.
  • Other CI/CD Services: Can be used with Code Magic, AppCenter, and others.

Pricing

  • Generous Free Tier: 5,000 patches per month free, hobby plan includes one developer, Chim Plan includes unlimited developers.
  • Cost: Pay-as-you-go beyond free tier, negotiate with Sho team if heavy usage expected.
  • Practical Example: Patching 10,000 users will need additional planning beyond the hobby plan.

FAQ and Best Practices

  • Performance: No significant performance degradation, slight size increase in Android APKs.
  • Release Best Practice: Recommend submitting a new app version periodically even if using code patches for minor updates.
  • Important Warnings: Don't ignore warnings from Sho CLI, ensure proper permission settings.

Conclusion and Final Notes

  • Overall Recommendation: Sho is production-ready but requires thorough testing and attention to CLI warnings.
  • Additional Resources: Coupon code for Sho services, invitation to connect for further questions.
  • Gratitude: Special thanks to supporters and collaborators.

Contact Information

  • Social Media Links: Connect with the speaker for more insights and collaboration opportunities.

Questions

  • Open to Queries: The speaker answers questions from the audience about limitations, practical usage, combining with other tools, and best practices.