<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Ravi Sorathiya — Dev Notes</title>
        <link>https://ravisorathiya.github.io/blog</link>
        <description>Articles by Ravi Sorathiya on Android development: Kotlin, Jetpack Compose and shipping apps to Google Play.</description>
        <lastBuildDate>Tue, 06 Oct 2026 00:00:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>Ravi Sorathiya — Dev Notes</title>
            <url>https://ravisorathiya.github.io/og/default.png</url>
            <link>https://ravisorathiya.github.io/blog</link>
        </image>
        <copyright>© 2026 Ravi Sorathiya</copyright>
        <atom:link href="https://ravisorathiya.github.io/blog/rss.xml" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[Ravi Sorathiya: Android developer, Kotlin & Jetpack Compose]]></title>
            <link>https://ravisorathiya.github.io/blog/find-ravi-sorathiya-android-developer</link>
            <guid isPermaLink="false">https://ravisorathiya.github.io/blog/find-ravi-sorathiya-android-developer</guid>
            <pubDate>Tue, 06 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Explore Ravi Sorathiya's Android work with Kotlin and Jetpack Compose: Messages, Gallery Pro, a PDF editor, and technical notes behind the apps.]]></description>
            <author>Ravi Sorathiya</author>
            <category>Android</category>
            <category>Jetpack Compose</category>
            <category>Kotlin</category>
            <category>Portfolio</category>
            <enclosure url="https://ravisorathiya.github.io/og/blog/find-ravi-sorathiya-android-developer.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[How I shaped AI to fit my Android development workflow]]></title>
            <link>https://ravisorathiya.github.io/blog/how-i-use-ai-android-development-workflow</link>
            <guid isPermaLink="false">https://ravisorathiya.github.io/blog/how-i-use-ai-android-development-workflow</guid>
            <pubDate>Mon, 05 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Not prompts, a system: the project memory, version-wise bug tracking, custom skills and device-first verification I use to make AI agents useful on real Android apps.]]></description>
            <author>Ravi Sorathiya</author>
            <category>AI</category>
            <category>Android</category>
            <category>Claude Code</category>
            <category>Productivity</category>
            <category>Kotlin</category>
            <enclosure url="https://ravisorathiya.github.io/og/blog/how-i-use-ai-android-development-workflow.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Building a PDF editor on Android with pdf.js inside a WebView]]></title>
            <link>https://ravisorathiya.github.io/blog/pdf-editor-pdfjs-webview-android</link>
            <guid isPermaLink="false">https://ravisorathiya.github.io/blog/pdf-editor-pdfjs-webview-android</guid>
            <pubDate>Fri, 02 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Why my Android PDF editor runs pdf.js in a WebView bridged to Kotlin, and the lessons from building signatures, text editing and form filling on top of it.]]></description>
            <author>Ravi Sorathiya</author>
            <category>Android</category>
            <category>Kotlin</category>
            <category>Jetpack Compose</category>
            <category>pdf.js</category>
            <category>WebView</category>
            <enclosure url="https://ravisorathiya.github.io/og/blog/pdf-editor-pdfjs-webview-android.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[Writing a replacement phone dialer: InCallService and CallScreeningService]]></title>
            <link>https://ravisorathiya.github.io/blog/android-dialer-incallservice-callscreeningservice</link>
            <guid isPermaLink="false">https://ravisorathiya.github.io/blog/android-dialer-incallservice-callscreeningservice</guid>
            <pubDate>Thu, 01 Oct 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[How a third-party Android dialer takes over calls with InCallService, picks the right incoming-call UI, and blocks spam with CallScreeningService.]]></description>
            <author>Ravi Sorathiya</author>
            <category>Android</category>
            <category>Kotlin</category>
            <category>Telecom</category>
            <category>InCallService</category>
            <category>CallScreeningService</category>
            <enclosure url="https://ravisorathiya.github.io/og/blog/android-dialer-incallservice-callscreeningservice.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[One template, 11 Play Store apps: Remote Config, consent and Baseline Profiles]]></title>
            <link>https://ravisorathiya.github.io/blog/shipping-android-apps-template-remote-config-baseline-profiles</link>
            <guid isPermaLink="false">https://ravisorathiya.github.io/blog/shipping-android-apps-template-remote-config-baseline-profiles</guid>
            <pubDate>Wed, 30 Sep 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[The shared foundation behind my Google Play apps: Firebase Remote Config switches, a GDPR consent flow, onboarding, in-app updates and Baseline Profiles for fast startup.]]></description>
            <author>Ravi Sorathiya</author>
            <category>Android</category>
            <category>Firebase</category>
            <category>Google Play</category>
            <category>Performance</category>
            <category>Architecture</category>
            <enclosure url="https://ravisorathiya.github.io/og/blog/shipping-android-apps-template-remote-config-baseline-profiles.png" length="0" type="image/png"/>
        </item>
    </channel>
</rss>