11
6 Comments

Building a mobile app to launch

I built an app where you can put in your contact information and easily share QR codes when meeting new people. I have worked on mobile apps before but I have never gone through the whole process of launching on the app stores with payments.

I built the app with React Native Expo and used Revenuecat for payments. I think this is a great tech stack for indiehackers as you don't need to duplicate your code base for iOS/Android and Revenuecat makes payments easy.

Developing an app with React Native is relatively straight forward if you have a React background. Uploading it to the app stores and getting payments to work is more confusing.

Expo's EAS simplifies a lot of this. Uploading to appstoreconnect is straight forward but for the play store you have to manually upload once before EAS can.

I used Revenuecat for payments and I think I saved a bunch of pain. I had some problems authorising the play store API but it takes the two app store payment architectures and makes it one.

The annoying thing about using revenuecat is that you have to use expo's dev client to develop on your device. This becomes a problem when you actually want to use your app. The work around I use is taking all the payment code into one file. I then have replacement dumby functions that bypass the paywall. When I am developing I comment in the dumby and out the real payment code and when I am preparing for building I comment in the real stuff.

With companies like Expo and Revenuecat making a mobile app is as accessible as ever.

, Founder of Icon for Allmycontact.info
Allmycontact.info
on September 2, 2022
  1. 3

    Not sure if I completely understand what you're saying regarding Expo Dev Client and using you live app, but have you thought about overwriting your ios.bundleIdentifier / android.package? I'm using the same stack (Expo, RevenueCat) and have separate apps for dev / staging / production.

    1. 1

      I did think of that but I haven't really considered it. I would think the annoyance of that is more than it's worth (maybe just for me). I have found commenting/uncommenting the payment code a good solution as I can keep all deving to the expo go app. Have you tried it? I would love to know if it's easy to setup.

      1. 1

        Setup is easy enough, just a config merge in app.config.ts and some npm scripts. I can share more, if you'd like. It's a bit of an overhead when you have to re-build the binaries after changes to native code.

  2. 2

    Looks like a cool project. What are your thoughts on the integration into both the App Store and the Play Store, and did you have any major issues?

    1. 1

      Once I was able to upload builds it was mostly a form filling competition which wasn't too bad.

      I did have a small payment bug but we don't talk about that...

  3. 1

    @FoldedCode - Thank you for the note on RevenueCat. I am building in flutter (dart) and there is an existing popular lib for in app purchases appropriately named in_app_purchase but it requires that you have you have your own infra for tracking subscriptions. RevenueCat provides the purchases_flutter package that is a RevenueCat client. I am going to go forward with this one for now until I run into any issues that require me building my own tracking system.

Trending on Indie Hackers
Most founders don't have a product problem. They have a visibility problem User Avatar 106 comments Day 4: Why I Built a $199 Workspace Nobody Asked For User Avatar 55 comments Spent months building LazyEats AI. Spent 1 day realizing I have no idea how to get users. User Avatar 35 comments Hi IH — quick update. The MVP is live. User Avatar 28 comments I Built a Football Sentiment Platform in 18 Days. The World Cup Starts in 7 Days. Now I Need Distribution. User Avatar 17 comments Built an n8n booking alert system — is cold outreach dead for B2B micro-tools? User Avatar 16 comments