Check Package Name
✓Must check package name before use to avoid conflicts or duplication.
Organize Project Assets
Keep all assets such as code, credentials, store details and other important files organized in a separate folder for each app.
- </>Source Code
- 🔒Credentials
- ▤Store Details
- ▣Assets (Images, Icons)
- ▤Documents
Confirm Firebase Requirement
Before starting, confirm whether Firebase is required or not.
If required, ask for the Firebase account.
Add Ad SDKs (Always)
Always add Google AdMob SDK and Facebook Ads SDK both in the app while setting up.
SDK
SDK
Use Test Ad IDs
Must use test ad IDs while developing the app.
Add Website URL
Always add website URL while deploying the app on stores.
Add Privacy Policy
Always add privacy policy while deploying the app on stores.
App Specific Screenshots
Screenshots must be app specific rather than creating fancy or generic screenshots.
Your app screen
Ask for Git Access
Always ask for git access once the app is ready to deploy.
Share APK via URL
Whenever sharing APK for testing, always give a URL to download rather than sending the APK file directly.
APK Naming with Date
APK file must be named with date so we can version it easily.
Follow Store Guidelines
While creating assets for Apple or Android store, must follow the official guidelines of respective stores.
Guidelines
Guidelines
Prepare Permission Justification
Whenever adding any permission to the app, must prepare its justification for Play Store using AI.
☑ ▬
Complete Every Play Store Publishing Step
In the Play Store publishing process, every step must be completed properly with each new release or update. Whenever any permission or feature is added or removed, the store listing must be updated too, without forgetting. Keep notes while developing so you can recheck these things while publishing the release.
ATest Ad IDs Reference (Google Sheet / Excel)
| Ad Network | Platform | Ad Type | Test Ad ID | Format | Placement Example |
|---|---|---|---|---|---|
| Google AdMob | Android | App Open | ca-app-pub-3940256099942544/3419835294 | App Open | App launch |
| Google AdMob | Android | Banner | ca-app-pub-3940256099942544/6300978111 | Banner | Home screen (Top/Bottom) |
| Google AdMob | Android | Interstitial | ca-app-pub-3940256099942544/1033173712 | Interstitial | Between screens |
| Google AdMob | Android | Rewarded | ca-app-pub-3940256099942544/5224354917 | Rewarded | After action |
| Google AdMob | Android | Native | ca-app-pub-3940256099942544/2247696110 | Native | Feed / List |
| Facebook Ads | Android | Banner | IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID | Banner | Home screen (Top/Bottom) |
| Facebook Ads | Android | Interstitial | IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID | Interstitial | Between screens |
| Facebook Ads | Android | Rewarded | IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID | Rewarded | After action |
BUse Single Config File for Ad IDs
class AdConfig {
// Google AdMob Test IDs
static const String admobAppOpenId =
'ca-app-pub-3940256099942544/3419835294';
static const String admobBannerId =
'ca-app-pub-3940256099942544/6300978111';
static const String admobInterstitialId =
'ca-app-pub-3940256099942544/1033173712';
static const String admobRewardedId =
'ca-app-pub-3940256099942544/5224354917';
// Facebook Test IDs
static const String fbBannerId =
'IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID';
static const String fbInterstitialId =
'IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID';
static const String fbRewardedId =
'IMG_16_9_APP_INSTALL#YOUR_PLACEMENT_ID';
}