From UTM Tags to Google Play: How a Non-Programmer Built an Android App Using AI
Creating a mobile app without any programming experience is now a realistic task thanks to modern AI tools. A philologist who picked up development through GPT shares the key lessons and technical details of the process, helping even seasoned developers sidestep common pitfalls when working with LLMs.
From Idea to First Prototype: How AI Replaces Syntax Knowledge
The project kicked off with a straightforward request: automating UTM tag generation for Telegram channels. Instead of hunting for web services on Google, the user opted to build their own Android app despite zero programming background. The first step was scouting competitors on Google Play—the results revealed no specialized tools, confirming low obvious demand but a big hidden pain point for marketers.
Work started with installing VS Code and basic chats with GPT. The AI churned out code snippets along with instructions on where to slot them into the project structure. A major hiccup surfaced early: the AI kept referencing nonexistent files or folders that needed manual creation. For instance, when asked to implement the tag generation screen, the model spat out:
// MainActivity.java
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button generateBtn = findViewById(R.id.generate_btn);
generateBtn.setOnClickListener(v -> {
String utmSource = ((EditText)findViewById(R.id.source_input)).getText().toString();
// Logic generation UTM
});
}
}
However, the activity_main.xml file didn't exist in the project, causing compilation errors. These issues kept cropping up until a systematic verification process for every step was put in place.
Why LLMs Aren't a Magic Bullet: Critical Thinking as the Bedrock of Vibe Coding
The project's big takeaway: AI assistants demand constant human oversight. Even with the "Thinking" mode in GPT models, the system sometimes blew past basic Android development rules. For example, when generating the manifest, it proposed outdated permissions:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Instead of the up-to-date android.permission.QUERY_ALL_PACKAGES, which tanked the Google Play submission. The fix came from manually reviewing the Android 13 docs.
Three practices turned out to be game-changers:
- Verify every file before changes—use
git statusto monitor project structure - Testing in Expo Go—fast iterations without APK builds
- Regular dependency audits—scan
package.jsonfor outdated packages
These cut errors by 70% after the first two weeks. Super effective was zipping the whole project and feeding it to the AI for review—this let it grasp the full codebase context.
Navigating Google Play Console: Hacks for Acing Closed Testing
Getting into the store was the second toughest hurdle. Google Play Console demanded:
- $25 dev account fee
- Mandatory closed testing (14 days, at least 12 active testers)
- Privacy policy with a public URL
The main snag: rounding up Android device owners from friends. Salvation came via Reddit's r/AndroidClosedTesting. A winning strategy:
- Drop your own post while joining others'
- Mandate daily app use (Google tracks via Firebase)
- Bump testers to 30+ to offset 50% dropouts
Google's first rejection hit due to weak tester engagement. Firebase logs revealed 60% only opened it once over 14 days. Relaunch with more testers and Telegram bot nudges sealed the deal.
Post-Launch Takeaways: Tech Insights for Newbie Devs
Final tweaks covered policies and localization. The biggest surprise: crafting a privacy policy. Google insists on a public doc, but here's the quick hack:
- Snag a domain like
appname-privacy.info - Whip up a page on Google Sites with a template
- Link via your dev Gmail
Took under 30 minutes, not days building a full site. Other gotchas:
- App icon must follow Material You guidelines (dynamic colors)
- Safe zone handling for modern phones
- Dynamic localization support via
strings.xml
Key Takeaways
- AI assistants need nonstop code checks via manual audits
- Google Play closed testing only flies with engaged testers
- Expo Go turbocharges React Native cross-platform dev
- Privacy policy required even for no-data apps
- UTM generators must handle edge cases (special chars, long params)
The project proves app-building sans experience is doable with a structured approach. Bottom line: AI amplifies dev skills—it's no substitute. For experimenters, today's LLMs deliver an MVP in 2-3 months vs. half a year the old way.
— Editorial Team
No comments yet.