A blog dedicated to the KaiOS ecosystem| KaiOS.dev
Analyzing hundreds of Cloud Phone user agent headers| KaiOS.dev
KaiOS Smart Touch: The Android Competitor Killed Before It Hit The Market| KaiOS.dev
Speculation about 4.0, the new major version of KaiOS| KaiOS.dev
Everything you need to know to publish KaiOS apps on the JioStore| kaios.dev
A look at which Web APIs are available on Cloud Phone by CloudMosa| kaios.dev
Everything you need to know to develop widgets for CloudModa's Cloud Phone| kaios.dev
Reading and writing system properties on KaiOS| kaios.dev
Learn about John-David Deubl's journey as a bike messenger and KaiOS developer| kaios.dev
WebAssembly and asm.js on KaiOSWhat is WebAssembly (WASM)? WASM allows developers to execute assembly-like low-level code written in languages like C/C++ or Rust via speecifically-compiled binaries within a web browser (in a sandboxed environment). KaiOS 2.5 doesn’t support WASM. However, KaiOS supports asm.js, a highly optimized subset of JavaScript used as a low-level language compilation target. KaiOS 3.0 supports WASM. Fortunately, KaiOS 3.0, which is based on Gecko 84, does support Web...| KaiOS.dev
There are over 100 KaiOS phones sold worldwide, and many more when you consider SKUs and network variants of the same model name (i.e. there are 20+ models of the JioPhone). More models may be observed from user agents. Disclosure: Some links below are affiliate links. This means that, at no cost to you, I may earn affiliate commission if you click the link and finalize a purchase, which supports this blog financially.| KaiOS.dev
Hazrat Ali of SoftloftBD is a Nutritional Science graduate in Bangladesh developing many KaiOS apps| kaios.dev
Developing with Flutter on KaiOSWhy it matters? Flutter is a leading, open source, multi-platform development framework by Google to build apps for iOS and Android, as well as web browsers and embedded devices. In a nutshell. Framework selection is critical for KaiOS development, since devices have limited storage and resources. Runtimes like Flutter notorious for large bundle sizes are not recommended for KaiOS. Practical OptimizationsDevelopers have been experimenting with Flutter on KaiOS ...| KaiOS.dev
Deep Dive on KaiOS User AgentsWhy it matters. User agents are one of the most common ways to identify devices on the web. Key TakeawaysUser agents are a mess. Some are missing spaces, others missing model numbers, and others still include two OS identifiers (Android and KAIOS). They can also be easily spoofed, but they’re still a useful mechanism to adapt your application at runtime or server-side. KaiOS Every KaiOS device includes the Mobile identifier All KaiOS devices include the identif...| KaiOS.dev
About Valeriy Skachko Valeriy Skachko is one of KaiOS’ top certified developers. Since 2018, he has published over 100 KaiOS apps, available on both the KaiStore and JioStore. Learn about his journey and lessons you can apply to your own software development. How did you get started with KaiOS?I started developing the first applications for mobile phones, at that time in Java ME (J2ME), in 2012, in addition to my teaching activities.| KaiOS.dev
Everything you need to publish an app on KaiOS Why it matters. Names, icons, and banners are how you stand out on a platform with limited discovery capabilities. Learn how to market and promote your application to grow your user base globally. Dive deeper. Publishing requirements are different between the KaiStore and JioStore. This article focused on the KaiStore, but makes a few notes where design requirements differ on the JioStore.| KaiOS.dev
Handle special keys (soft keys, volume, camera) on KaiOS Why it matters. A great user experience on KaiOS starts with directional navigation and proper keyboard handling. Dive deeper. Not all devices support the same hard keys, and while most have a T9 layout, some like the JioPhone 2 have full QWERTY keyboards. Special Keys Key Key Code Code Description SoftLeft 0 F13 Left Soft Key (LSK), typically performs action SoftRight 0 F15 Right Soft Key (RSK), typically opens options menu MicrophoneT...| KaiOS.dev
KaiOS is positioned to grow significantly across Africa. Why it matters? Market trends, as well as recent partnership and investments, suggests the smart feature phone operating system has an opportunity to capture hundreds of millions of first time internet users across the continent. In KaiOS’ February Developer Update, it was announced that, “KaiOS is refocused on growth.” KaiOS is expanding in developing markets, specifically in Africa (launching in 10+ new African markets) KaiOS la...| KaiOS.dev
What features can you detect with navigator.getFeature() on KaiOS?| kaios.dev
A curated list of free and open source resources for KaiOS| kaios.dev
Ideas for KaiOS apps still unavailable on the KaiStore in 2024| kaios.dev
Data Storage on KaiOSKaiOS offers standard Web Storage APIs (localStorage and sessionStorage), indexedDB, document.cookie, and the Cache API as well as platform-specific APIs like Device Storage and Data Store. The ideal API for your use case depends on factors including data size, security, and simplicity. Keep in mind that KaiOS devices have limited storage available (i.e. the Blu Zoey Smart only has 512MB), and many users will not have an external micro SD card, so its best to store the mi...| KaiOS.dev
What’s Missing?KaiOS was founded in 2016, but 8 years later key tools are missing from the KaiOS developer experience (DevEx). Why it matters? KaiOS is available in 100+ countries with 170M+ devices shipped in 2022. Yet there are fewer than 1,500 KaiOS apps, limited by DevEx. By the numbers As of January 2024, the KaiStore has 1,440 KaiOS 2.5 apps but only 520 KaiOS 3.0 apps. 3 years after launching, notable 3.| KaiOS.dev
Setup Google Analytics (GAv4) or alternative web traffic analytics for KaiOS apps. Google Analytics Google Analytics Demographics - KaiOS App Google Analytics is by far the most popular web and mobile traffic and events analytics platform. It’s free, easy to use, and customizable to accurately measure user behavior, demographics, technical performance and errors, and more. However, Google Analytics does not work out of the box with KaiOS. Note: on July 1st, 2023, Universal Analytics stopped...| KaiOS.dev
Localization (L10n) for KaiOS Apps PodLP Localization in Arabic, English, and Hindi Why it matters? KaiOS is available in over 100 countries, with top demographics in India, United States, Nigeria, Tanzania, and Uganda. Localization facilitates market entry, improves user experience, and increases retention. How it WorksLocalization isn’t an outcome, it’s a process of adapting your application to specific markets. It includes many elements like: Translating content into multiple languages...| KaiOS.dev
[Guest Post] Building a Crypto Wallet on KaiOS Sorted Wallet is the first cryptocurrency wallet created for KaiOS feature phone devices and published on the KaiStore. Why it matters? Sorted Wallet provides the basic functionality for crypto assets holders and enables non-smartphone owners to step into the world of cryptocurrency. It tackles the increasing wealth gap in emerging markets and provides support to underserved populations in their fight for financial inclusion.| KaiOS.dev
Running in the Background on KaiOSDespite KaiOS operating on resource-constrained hardware, apps can execute tasks in the background using several approaches. Background Media Activities & System Messages Service Workers Alarm API Request Sync API Background MediaThe simplest way to do anything in the background is by using Audio Channels to continue audio playback while using another app. Using the content audio channel on an audio or video element, when the user presses Back/ EndCall, it wi...| KaiOS.dev
What's next for the JioPhone, the best-selling KaiOS phone globally?| kaios.dev
What makes KaiOS Certified Apps Special? (with sources)| kaios.dev
Working with Bluetooth Low Energy (BLE) on KaiOS Use CasesBluetooth Low Energy (BLE) is a recent version of Bluetooth designed for very low power consumption. Compared to Bluetooth Enhanced Data Rate (EDR), BLE is designed to transfer much smaller amounts of data between devices via an ephemeral connection, not a durable pairing. Common BLE applications include: Healthcare devices - Thermometer, heart rate and glucose monitor, etc Proximity sensing - Tile, AirTag, “Find my” device Contact...| KaiOS.dev
Learn how to use common KaiOS APIs and InterfacesWake LockKaiOS does not support the Wake Lock API. Instead, it offers it’s own API: 1interface MozWakeLock { 2 readonly topic: string; 3 4 /** 5 * Release the wake lock. 6 * @throw NS_ERROR_DOM_INVALID_STATE_ERR if already unlocked. 7 */ 8 unlock(): void; 9} 10 11// KaiOS 2.5 12navigator.requestWakeLock(aTopic: string): MozWakeLock; 13 14// KaiOS 3.0 15navigator.b2g.requestWakeLock(aTopic: string): MozWakeLock; The KaiOS Wake Lock API will ac...| KaiOS.dev
Is the Jio Bharat 4G the end of KaiOS in India?| kaios.dev
CVE-2023-33293 was published today, outlining an information disclosure concern with api-daemon whereby websites can determine what apps and which versions are installed on KaiOS 3.0 and 3.1 devices. Photo of app list with versions exposed on Alcatel Go Flip 4 (KaiOS 3.0) browser Why it matters? KaiOS 3.0 & 3.1 users in the US are disclosing what apps and which versions they have installed to websites they visit. What can attackers do with this vulnerability?| KaiOS.dev
CVE-2023-33294: Executing Commands as Root from the Browser via TCT Web Server| kaios.dev
CVE-2023-27108: Accessing Call Logs from the Browser on KaiOS 3.0 & 3.1| kaios.dev
Security and Privacy considerations for KaiOS smart feature phonesKaiOS is based on Firefox OS, and as a result, many of the same technologies apply to Security & Privacy within KaiOS apps. Content Security Policy (CSP)The Content Security Policy (CSP) prevents attacks like Cross-Site Scripting (XSS) by limiting the origins that specific resources like scripts, objects, and stylesheets can be loaded from. KaiOS imposes default CSPs on Privileged & Certified packaged apps.| KaiOS.dev
KaiOS phone recommendations for users, digital detoxers, and developers| kaios.dev
Optimizing apps for KaiOS smart feature phonesModern app developers have become accustomed to iOS and Android smartphones with specifications comparable to laptop or desktop computers: multi-touch high-resolution displays, gigabytes of memory, hundreds of gigabytes of storage, and cutting-edge 5G and WiFi 6 networking. In contrast, KaiOS smart feature phones have either 256mb or 512mb of RAM, storage between 256mb - 8gb, small ~2" 240x320 screens, and 3G, 4G and Wi-Fi ABG.| KaiOS.dev
Complete Guide to App Permissions on KaiOS| kaios.dev
Complete Guide to manifest.webapp Properties on KaiOS| kaios.dev
Controlling volume and audio channels on KaiOS| kaios.dev
How to stream and store files on KaiOS| kaios.dev
Recommendations for developing KaiOS apps| kaios.dev
KaiOS FAQsBasicsWhat hardware specifications do KaiOS phones have? 240x320 ~2.4-3" displays 256mb or 512mb RAM 3G or 4G ARM CPUs Qualcomm, Spreadtrum & Mediatek ~1GHz - 1.3GHz Dual or Quad Core T9 or QWERTY keyboards D-Pad & Soft-Key (LSK & RSK) navigation WiFI & Bluetooth (optional) Is Instagram, Tik-Tok, Spotify, Uber, [insert app] available on KaiOS?No. KaiOS has a number of popular apps, including: Facebook WhatsApp YouTube Google Assistant Google Search Google Maps Microsoft Outlook As o...| KaiOS.dev
Sharing, selecting, and viewing data cross-app with Web Activities and deep links| kaios.dev
Developing KaiOS apps on Mac (updated for Ventura 13.2) Getting StartedDeveloping and testing KaiOS apps on a real device using Mac is easy, and a great way to validate your apps on actual hardware. For setup, all you need is adb, WebIDE (a debug tool that used to come pre-packaged with Firefox), and a debug-enabled KaiOS device like the Nokia 8110 4G. Waterfox ClassicAccording to the KaiOS ENV Setup guide, Firefox 59 is recommended for KaiOS development.| KaiOS.dev
Monetizing apps with on KaiOS with KaiAds and JioAds. KaiAds KaiAd Examples By far, KaiAds are the easiest way to monetize KaiOS apps. KaiOS provides a publisher SDK that works for both apps and websites. There are two types of KaiAds: responsive banners and full-page interstitials. KaiAds can be preloaded in the background with a refresh rate of ~30 seconds, then displayed when the opportunity is right like during page transitions or when the user finishes a level in a game.| KaiOS.dev
Sending Notifications with the Web Push Protocol on KaiOS. The Web Push Protocol Push Notifications on KaiOS Push Notifications on KaiOS work more or less the same as they do in a web browser like Firefox, with some caveats. They are a great way to provide utility and drive engagement. For instance: Chat app with notifications for new messages Email app with notifications for new emails Podcast app with notifications for new episodes Sports app with notifications for game scores Bank app with...| KaiOS.dev
The KaiOS ecosystem, packaged and hosted apps, and the KaiStore and JioStore. KaiOS App Basics KaiOS Apps (Source: 2020’s most popular KaiOS apps) Unlike Android and iOS, “native” KaiOS apps are just modified web apps. That means no new programming languages to learn or complicated build processes, just standard HTML, CSS, and JavaScript. That means you can also write in TypeScript or any JavaScript version or language the compiles or transpiles into ECMAScript 2015 (ES6) and runs on Fi...| KaiOS.dev
Disabling the Same Origin Policy (CORS), Navigator.mozTCPSocket, and issues with SSL certificates| kaios.dev
Learn about KaiOS, the world's third most popular mobile operating system| kaios.dev
Privacy Policy| kaios.dev
Practical tips for meaningfully optimizing KaiOS apps| kaios.dev