Stop Building Trash: Dark Patterns, Fake Crypto Apps, and the App Store Mess
App stores are flooded with sketchy AI paywalls and cloned investment scripts. Here is why we need to talk about developer ethics and predatory UI tricks.

My cousin in Akure called me frantic last week because an app promised him 15% daily returns on "AI crypto arbitrage" and then locked his account the second he tried to withdraw ₦50,000. I didn't even need to look at the APK to know what happened—it was another hastily put-together wrapper with a hardcoded ledger, built purely to fleece people looking for a way out of Sapa.
We talk a lot about "innovation" in the ecosystem, but if you spend five minutes looking at what's actually sitting in the top charts on Google Play or the iOS App Store, a depressing chunk of it is garbage.
Security reports keep flagging these "dangerous apps" every year, but as someone who spends his days writing code and shipping builds, I know the real problem isn't just malicious code. It’s predatory design and sloppy development choices.
How Bad Code Slips Through App Store Review
People assume that if an app is on Apple's App Store or Google Play, it has been vetted like gold bars in a central bank. As developers, we know the truth: App Store review is largely automated scripts running static analysis against known malware signatures, mixed with brief human spot-checks.
It’s embarrassingly easy to bypass.
Want to build a scam app that passes review? You ship a totally clean React Native or Flutter app with a basic UI. The moment the review team approves it, you toggle a remote feature flag on your server or push a dynamic update via CodePush. Suddenly, your harmless calculator turns into a sketchy investment dashboard or starts serving silent, background ad-click scripts.
The tech isn't even sophisticated. It's just dishonest.
The "Sapa" Exploitation Engine: Fake Finance Apps
In Nigeria, financial pressure creates a massive target audience for scammers. When someone is struggling to cover rent or pay for generator fuel, a slick UI promising "zero-risk AI trading" looks like a lifeline.
Building these fake investment apps takes less than two days. You clone a basic UI library, throw in some glowing stock charts using Chart.js, hook up a Paystack or Flutterwave endpoint to accept deposits, and write a simple backend rule that increments a fake balance by 5% every midnight.
// The entire logic behind half these "AI trading" platforms
const fakeBalance = userDeposit * Math.pow(1.05, daysElapsed);
There is no trading happening behind the curtain. No AI models. No crypto liquidity pools. Just a database table sitting on a cheap VPS somewhere, waiting until enough deposits come in before the owner drops the database and deletes the domain.
Why Does a Flashlight Need Your Location?
It’s not just finance scams, though. Take utility apps—QR code scanners, battery boosters, flashlight apps.
Every modern Android and iOS device has a native QR scanner built directly into the camera system and a toggle for the flashlight in the quick settings. Yet, third-party scanner apps get millions of downloads. Why? Because users don't know any better, and developers take advantage of that ignorance.
When you look inside the AndroidManifest.xml or Info.plist of these apps, you’ll find requests for:
ACCESS_FINE_LOCATIONREAD_CONTACTSRECORD_AUDIO
A camera LED toggle needs exactly zero of these permissions. The only reason a developer inserts those permission requests is because ad networks pay higher CPMs for pinpoint location data and contact lists. You aren't downloading a tool; you're downloading a tracker wrapped in an ad-serving SDK that drains your battery and burns through your expensive data subscription.
The AI Subscription Trap
Lately, the trend has shifted to AI tools. Wrapper apps built on top of OpenAI or Anthropic APIs are popping up everywhere.
They advertise themselves as "Free AI Photo Editors" or "Free AI Writers," but the onboarding flow is a minefield of dark patterns. The UI hides the tiny "X" button in the top right corner behind a faint grey color on a white background, forcing users onto a $9.99/week recurring subscription before they even see the home screen.
For someone in Owerri or Jos using an international card, those recurring billing charges can wreck an account before they even realize what happened.
We Need Better Developer Ethics
As builders, we have to do better. Stop bundling sketchy third-party SDKs just to make an extra $50 a month on ad revenue. Stop designing sneaky paywalls that trick non-tech-savvy users into weekly subscriptions. And for goodness' sake, stop building ponzi schemes disguised as "AI Fintech."
If an app you’re building requires permissions that don't directly serve the core user action, cut them out. If your monetization model relies on tricking people into forgetting to cancel a free trial, your product model is broken.
The "no gree for anybody" spirit shouldn't mean hustling your own users with dark patterns. Build clean products, keep your manifests lightweight, and respect the people downloading your software.
Related from Nigeria
Let's build your next big product.
Accepting project-based freelance, remote engineering roles, and hybrid positions.