2024 - 10 min. to build a free native iOS/Android app 🔷

Thanks Jon. I went ahead and wrote some notes as I had to watch the video a few times to get it all down. The mistake I kept making is that I started my app name with a number, and this is not allowed: <manifest>  |  Android Developers

A full Java-language-style package name for the Android app. The name may contain uppercase or lowercase letters (‘A’ through ‘Z’), numbers, and underscores (‘_’). However, individual package name parts may only start with letters.

I then kept running into errors where my app name was already in use when I removed the numbers, so I took the numbers and appended them to my app name instead of prepending them, and voila it worked!

Android deployment:

  1. Go to jasonelle.com
  2. Download and unzip jasonette-android.zip
  3. Suggested unzip to — to c:\androidStudio\projects\jasonette-android-master
  4. Copy c:\androidStudio\projects\jasonette-android-master to c:\androidStudio\projects<app/project name>
  5. There should now be a folder c:\androidStudio\projects<app/project name>jasonette-android-master
  6. Open android studio
    1. File —> New —> Import Project
    2. Select :android icon:jasonette-android-master [ok]
    3. Install any recommended Plugin Update
    4. Search: settings.gradle
    5. Change 1 include ‘:app’ to include ‘:’
    6. DO NOT SYNC
    7. Right click on app folder under jasonette-android-master
      1. Refactor —> Rename + F6 —> Rename directory
      2. Type in MUST NOT START WITH A NUMBER
      3. Select Android from drop down menu
      4. Select Sync Now
    8. Search: strings.xml
      1. Change Jasonette to
    9. Rename file://hello.json to https://.com/index.json
      1. index.json: { “$jason”: { “body”: { “background”: { “type”: “html”,
    10. Search: manifest and open AndroidManifest.xml \src\main
      1. Delete android:maxSdkVersion=“22”
    11. Search: build.gradle Select build.gradle
      1. Change compileSdkVersion to 29
      2. Change buildToolsVersion to ’29.0.2’
      3. Change targetSdkVersion to 29
      4. Change applicationId "com.<appname>”
      5. Sync Now
    12. Update icons: MacKenzie Software
      13 Generate signed bundle, upload to Google Play for business | Launch & monetize your apps | Google Play Console
      14 Add privacy policy here: https://play.google.com/console/app/app-content/summary

These are my rough notes, but I figure as I submit more and more apps, this workflow will be perfected. I also had some issues with signing the bundle. I lucked out as I was able to find the initial keys I used. I think the main challenge with all this, is that we’ve spent so much time building our apps, and it’s exhausting to jump through (what feel like) hoops and hurdles to finish that final lap of play store submission.

My last hurdle is setting a privacy policy, or eliminating the need for it since I don’t access any phone data, but I’m starting to see the light at the end of the tunnel. Funny thing I submitted an app perhaps a year ago but forgot to take notes. Figure the third time “will be a charm.”

Xcode deployment notes — ROUGH — reply with edits/improvements:

Xcode deployment

  1. Install Xcode from App Store

  2. Create Xcode Projects folder

  3. Download jasonelle Releases · jasonelle/jasonelle · GitHub

  4. Unzip to Xcode Projects folder

  5. Copy jasonette-ios-master into projects folder

  6. Select “Open a project or file” from launch window then select project folder\jasonette-ios-master\Xcode\Jasonette.xcworkspace

  7. Select Jasonette, Open your Xcode project, choose your project from the left side and then on the right side, under the Identity and Type, change the Name to your new project name and press Enter.

  8. Set Team name

  9. Bundle Identifier com.your-app-name

  10. Edit Config → Info.plist → Bundle name

  11. Go to —> App —> settings.plist double click file://hello.json change to https://.com/index.json

  12. Go to YourAppName —> Config —> Info.plist

  13. Change bundle name to app name

  14. Use http://easyappicon.com/ to make icon

  15. Add icons to /Xcode Projects/740bSecure/jasonette-ios-master/xcode/Config Media.xcassets folder

  16. Change name of app: Next to Play/Stop button, Click on Jasonette > Manage Schemes

  17. Scroll to bottom

1. Click on Jasonette, hit enter
2. Type in app name
  1. Go to appstoreconnect.apple.com/apps click New App
  2. Go to Menu → Product → Archive → Distribute App → App Store Connect → Upload → Checkoff Upload your app’s symbols… → Automatically manage signing → Checkoff Generate an Apple Distribution certificate → Export key → Next → UPLOAD!!!
  3. Upload appropriate screenshots (***I manually changed the size of certain screenshots to apple requirements)
  4. Fill out App store info like App Category, privacy policy url etc

Additional Notes: First time round, I made the mistake of “fixing” errors and this ruined my build. If you can build successfully (seeing your app on the virtual device), I suggest ignoring the errors. My app is currently “in review” and so it appears the “errors” are not impediments to successful app publication.

7 Likes