Mobile Developer Interview Questions

The ultimate database for mobile engineers, covering native Android (Kotlin/Java), native iOS (Swift), and cross-platform frameworks (React Native/Flutter).

Total Questions:500
Difficulty Levels:
BeginnerIntermediateAdvanced
0%

Overall Progress

0/500

1.What is an Activity in Android and explain its lifecycle?

2.What is the difference between Activity and Fragment?

3.Explain the four types of Android components.

4.What is an Intent in Android? Explain Explicit vs Implicit Intent.

5.What is the difference between Service and IntentService?

6.Explain the Android Application lifecycle.

7.What is a BroadcastReceiver and when would you use it?

8.What is a ContentProvider and why is it used?

9.What is the difference between onCreate() and onStart()?

10.When is onPause() called and what should you do in it?

11.What happens when you rotate the screen in Android?

12.How do you save Activity state during configuration changes?

13.What is the difference between Serializable and Parcelable?

14.Why is Parcelable faster than Serializable in Android?

15.What is a Bundle in Android?

16.Explain the difference between Activity Context and Application Context.

17.When should you use getApplicationContext() vs getContext()?

18.What is a memory leak in Android and how do you prevent it?

19.What is ANR (Application Not Responding) and how do you avoid it?

20.What is the Android Manifest file and what does it contain?

21.What are the different types of layouts in Android?

22.What is the difference between LinearLayout and RelativeLayout?

23.What is ConstraintLayout and why is it recommended?

24.Explain the difference between match_parent and wrap_content.

25.What is a RecyclerView and how is it different from ListView?

26.How does RecyclerView improve performance over ListView?

27.What is the ViewHolder pattern and why is it important?

28.How do you implement an infinite scrolling list in RecyclerView?

29.What is DiffUtil in RecyclerView and how does it work?

30.Explain the difference between View and ViewGroup.

31.What is a Custom View and how do you create one?

32.How do you handle click events in Android?

33.What is the difference between onClick XML attribute and setOnClickListener?

34.What are Fragments and why are they useful?

35.What is the Fragment lifecycle?

36.How do you communicate between Fragments?

37.What is the difference between add() and replace() in FragmentTransaction?

38.What is a DialogFragment and when should you use it?

39.What is the difference between Dialog and DialogFragment?

40.How do you pass data between Activities?

41.What is MVVM architecture in Android?

42.Explain the MVC pattern in Android.

43.What is MVP architecture and how does it differ from MVC?

44.Why is MVVM preferred over MVP in modern Android development?

45.What is ViewModel and why is it important?

46.What is LiveData in Android?

47.How does LiveData differ from ObservableField?

48.What is the difference between MutableLiveData and LiveData?

49.What is DataBinding in Android?

50.How do you implement two-way data binding in Android?

51.What is ViewBinding and how is it different from DataBinding?

52.What is Jetpack Compose and how does it differ from XML layouts?

53.Explain the Repository pattern in Android.

54.What is Dependency Injection and why is it useful?

55.What is Dagger in Android?

56.Explain the difference between Dagger and Hilt.

57.What is Koin and how does it compare to Dagger?

58.What are Android Architecture Components?

59.What is Room Database in Android?

60.How does Room differ from SQLite?

61.What are the advantages of Kotlin over Java for Android?

62.What is null safety in Kotlin and how does it work?

63.Explain the difference between val and var in Kotlin.

64.What are data classes in Kotlin?

65.What is the difference between == and === in Kotlin?

66.What are extension functions in Kotlin?

67.What is a lambda expression in Kotlin?

68.What are higher-order functions in Kotlin?

69.What is the difference between let, run, apply, also, and with in Kotlin?

70.What are Coroutines in Kotlin?

71.How do Coroutines differ from Threads?

72.What is suspend function in Kotlin?

73.What is the difference between launch and async in Coroutines?

74.What are Coroutine Scopes (viewModelScope, lifecycleScope, GlobalScope)?

75.What is Flow in Kotlin and how does it differ from LiveData?

76.What is the difference between Flow and Channel?

77.What is sealed class in Kotlin and when would you use it?

78.What is object keyword in Kotlin?

79.What is companion object in Kotlin?

80.What is inline function in Kotlin?

81.How do you make network calls in Android?

82.What is Retrofit and why is it popular?

83.How do you handle API responses in Retrofit?

84.What is OkHttp and how does it work with Retrofit?

85.How do you implement authentication token in API calls?

86.What is the difference between synchronous and asynchronous API calls?

87.How do you handle network errors in Android?

88.What is Gson and how do you use it for JSON parsing?

89.What is the difference between Gson and Moshi?

90.How do you implement caching for network requests?

91.What is WorkManager in Android?

92.When should you use WorkManager vs Service?

93.How do you upload files to a server in Android?

94.How do you download large files in Android?

95.What is the difference between HttpURLConnection and Retrofit?

96.How do you handle SSL certificate pinning in Android?

97.What is JSON and how do you parse it in Android?

98.How do you implement pagination in API calls?

99.What is GraphQL and how does it differ from REST?

100.How do you implement WebSocket connections in Android?

101.What are the different ways to store data in Android?

102.What is SharedPreferences and when should you use it?

103.What is the difference between SharedPreferences and DataStore?

104.What is SQLite in Android?

105.How do you implement Room Database in Android?

106.What are DAO (Data Access Objects) in Room?

107.What is the difference between @Insert, @Update, and @Delete in Room?

108.How do you perform migrations in Room Database?

109.What is the difference between internal storage and external storage?

110.How do you save files to external storage in Android?

111.What are scoped storage changes in Android 10+?

112.How do you request runtime permissions for storage?

113.What is EncryptedSharedPreferences in Android?

114.How do you implement data encryption in Android?

115.What is Firebase Realtime Database?

116.What is Cloud Firestore and how does it differ from Realtime Database?

117.How do you implement offline caching in Android?

118.What is the Repository pattern for data management?

119.How do you sync local database with remote server?

120.What is ContentResolver in Android?

121.What is a Service in Android and its types?

122.What is the difference between Started Service and Bound Service?

123.What is Foreground Service and when should you use it?

124.How do you show a notification for a Foreground Service?

125.What is JobScheduler in Android?

126.What is AlarmManager and when should you use it?

127.What is the difference between WorkManager and JobScheduler?

128.How do you run periodic background tasks in Android?

129.What is Doze mode and how does it affect background tasks?

130.What is App Standby in Android?

131.How do you handle background location updates?

132.What is FusedLocationProviderClient?

133.How do you implement Firebase Cloud Messaging (FCM)?

134.How do you handle push notifications in Android?

135.What is the difference between local and remote notifications?

136.How do you create notification channels in Android O+?

137.What is Handler and Looper in Android?

138.What is AsyncTask and why is it deprecated?

139.What are the alternatives to AsyncTask?

140.How do you perform long-running operations without blocking UI?

141.What is the iOS application lifecycle?

142.Explain the ViewController lifecycle in iOS.

143.What is the difference between viewDidLoad and viewWillAppear?

144.What is AppDelegate and SceneDelegate in iOS?

145.What is UIViewController in iOS?

146.What is the difference between frame and bounds?

147.What is Auto Layout in iOS?

148.What are NSLayoutConstraints?

149.What is the difference between Storyboard and XIB?

150.What is SwiftUI and how does it differ from UIKit?

151.What is Optional in Swift and why is it important?

152.What is the difference between Optional binding and Optional chaining?

153.What is the difference between if let and guard let?

154.What is nil coalescing operator (??) in Swift?

155.What are Closures in Swift?

156.What is @escaping in Swift closures?

157.What is the difference between struct and class in Swift?

158.When should you use struct vs class?

159.What is value type vs reference type in Swift?

160.What is ARC (Automatic Reference Counting) in Swift?

161.What is a strong reference cycle and how do you break it?

162.What is weak and unowned in Swift?

163.What is the difference between weak and unowned?

164.What are Protocols in Swift?

165.What is protocol-oriented programming?

166.What is the difference between protocol and abstract class?

167.What are Extensions in Swift?

168.What is the difference between extension and inheritance?

169.What are Generics in Swift?

170.What is Type Casting in Swift (as, as?, as!)?

171.What is UITableView and how do you use it?

172.What is the difference between UITableView and UICollectionView?

173.What is the reuse identifier in UITableView?

174.How do you implement custom cells in UITableView?

175.What is UICollectionViewFlowLayout?

176.How do you handle cell selection in UITableView?

177.What is UINavigationController in iOS?

178.What is the difference between push and present in iOS?

179.What is UITabBarController?

180.How do you pass data between ViewControllers?

181.What is Delegate pattern in iOS?

182.What is the difference between Delegation and Notification?

183.What is NSNotificationCenter?

184.What is KVO (Key-Value Observing) in iOS?

185.What is UIStackView and when should you use it?

186.What is Constraint Priority in Auto Layout?

187.How do you handle dynamic cell heights in UITableView?

188.What is UIScrollView and how do you use it?

189.What is the difference between UIView and UIControl?

190.How do you create animations in iOS?

191.How do you make network calls in iOS?

192.What is URLSession in iOS?

193.What is the difference between URLSession.shared and custom URLSession?

194.How do you parse JSON in Swift using Codable?

195.What is Alamofire and why is it used?

196.How do you handle authentication in iOS apps?

197.What is Keychain in iOS and how do you use it?

198.What is UserDefaults in iOS?

199.What is Core Data in iOS?

200.What is the difference between Core Data and SQLite?

201.What is NSFetchedResultsController?

202.How do you perform migrations in Core Data?

203.What is Realm Database in iOS?

204.How do you implement caching in iOS?

205.What is URLCache in iOS?

206.What is MVC pattern in iOS?

207.What is MVVM pattern in iOS?

208.What is VIPER architecture?

209.What is Coordinator pattern in iOS?

210.What is Singleton pattern and when should you use it?

211.What is Factory pattern in iOS?

212.What is Observer pattern in iOS?

213.What is Dependency Injection in iOS?

214.How do you implement Dependency Injection in Swift?

215.What is Repository pattern in iOS?

216.What is React Native and how does it work?

217.What is the difference between React and React Native?

218.How does React Native bridge work?

219.What is JSX in React Native?

220.What are React Native Components?

221.What is the difference between View and Text components?

222.What is FlatList in React Native?

223.How is FlatList different from ScrollView?

224.What are React Hooks in React Native?

225.What is useState hook?

226.What is useEffect hook and when is it called?

227.What is useContext in React Native?

228.What is useRef hook used for?

229.What is Redux and why is it used in React Native?

230.What are Redux actions and reducers?

231.What is the difference between Redux and Context API?

232.What is React Navigation in React Native?

233.How do you navigate between screens in React Native?

234.What is the difference between Stack Navigator and Tab Navigator?

235.How do you pass parameters between screens?

236.What is AsyncStorage in React Native?

237.How do you make API calls in React Native?

238.What is Axios in React Native?

239.How do you handle images in React Native?

240.What is the difference between Image and ImageBackground?

241.What is Flutter and how does it differ from React Native?

242.What is Dart programming language?

243.What is a Widget in Flutter?

244.What is the difference between Stateless and Stateful widgets?

245.What is setState() in Flutter?

246.What is BuildContext in Flutter?

247.What is the widget tree in Flutter?

248.What is Hot Reload in Flutter?

249.What is the difference between Hot Reload and Hot Restart?

250.What are Keys in Flutter and when should you use them?

251.What is the difference between Container and SizedBox?

252.What is ListView in Flutter?

253.What is the difference between ListView and GridView?

254.What is StreamBuilder in Flutter?

255.What is FutureBuilder in Flutter?

256.What is Provider in Flutter?

257.What is BLoC pattern in Flutter?

258.What is GetX in Flutter?

259.What is Riverpod in Flutter?

260.How do you handle navigation in Flutter?

261.How do you detect memory leaks in Android?

262.What is Android Profiler and how do you use it?

263.How do you optimize RecyclerView performance?

264.What is view recycling and why is it important?

265.How do you reduce app size in Android?

266.What is ProGuard and R8 in Android?

267.How do you implement lazy loading in mobile apps?

268.What is image caching and how do you implement it?

269.What is Glide library in Android?

270.How does Picasso differ from Glide?

271.How do you optimize battery consumption in Android?

272.What is Doze mode and how does it work?

273.How do you detect performance issues in iOS?

274.What is Instruments in Xcode?

275.How do you reduce iOS app size?

276.What is bitcode in iOS?

277.How do you implement image caching in iOS?

278.What is SDWebImage in iOS?

279.What is Kingfisher library in Swift?

280.How do you optimize UITableView scrolling performance?

281.What is Unit Testing in mobile development?

282.What is JUnit in Android?

283.What is Mockito and how do you use it?

284.What is Espresso for Android testing?

285.How do you write UI tests in Android?

286.What is XCTest in iOS?

287.What is XCUITest for iOS UI testing?

288.What is the difference between Unit Test and Integration Test?

289.What is Test-Driven Development (TDD)?

190.How do you mock network calls in tests?

291.What is code coverage and how do you measure it?

292.What is Jest for React Native testing?

293.What is React Native Testing Library?

294.How do you test Flutter applications?

295.What is widget testing in Flutter?

296.What is Firebase Test Lab?

297.What is Appium for mobile testing?

298.What is the difference between manual and automated testing?

299.How do you implement Continuous Integration for mobile apps?

300.What is Fastlane and how does it help in testing?

301.How do you secure API keys in mobile apps?

302.What is SSL Pinning and how do you implement it?

303.How do you implement biometric authentication in Android?

304.What is Android Keystore System?

305.How do you encrypt sensitive data in Android?

306.How do you implement Face ID and Touch ID in iOS?

307.What is Keychain Services in iOS?

308.How do you prevent reverse engineering of mobile apps?

309.What is code obfuscation?

310.How do you implement OAuth 2.0 in mobile apps?

311.What is JWT (JSON Web Token) authentication?

312.How do you store authentication tokens securely?

313.What is root detection in Android?

314.What is jailbreak detection in iOS?

315.How do you implement certificate pinning?

316.What is HTTPS and why is it important?

317.How do you handle sensitive data in logs?

318.What is Android SafetyNet API?

319.What are OWASP Mobile Top 10 vulnerabilities?

320.How do you implement secure communication between app and server?

321.What is Continuous Integration and Continuous Deployment?

322.What is Fastlane for mobile development?

323.How do you automate app builds?

324.What is Jenkins for mobile CI/CD?

325.What is CircleCI?

326.What is GitHub Actions for mobile apps?

327.How do you manage different build variants in Android?

328.What is the difference between debug and release builds?

329.What is App Signing in Android?

330.How do you generate a signed APK in Android?

331.What is AAB (Android App Bundle)?

332.What is the difference between APK and AAB?

333.How do you publish an app to Google Play Store?

334.What is Google Play Console?

335.How do you implement staged rollouts in Play Store?

336.What is TestFlight in iOS?

337.How do you submit an app to Apple App Store?

338.What is App Store Connect?

339.What are provisioning profiles in iOS?

340.What is the difference between Development and Distribution certificates?

341.What is Deep Linking in mobile apps?

342.What is the difference between Deep Links and Universal Links?

343.How do you implement deep linking in Android?

344.What is App Links in Android?

345.What are Universal Links in iOS?

346.How do you handle deep links when app is not running?

347.What is Firebase Dynamic Links?

348.What is Push Notification?

349.How do you implement push notifications in Android?

350.What is FCM (Firebase Cloud Messaging)?

351.How do you implement push notifications in iOS?

352.What is APNs (Apple Push Notification service)?

353.What is the difference between local and remote notifications?

354.How do you handle notification clicks?

355.What are notification channels in Android?

356.How do you implement rich notifications?

357.What are notification badges?

358.How do you implement silent notifications?

359.What is notification priority?

360.How do you schedule local notifications?

361.How do you integrate payment gateways in mobile apps?

362.What is Google Pay integration in Android?

363.What is Apple Pay integration in iOS?

364.How do you implement Stripe payment in mobile apps?

365.What is PayPal SDK for mobile?

366.How do you implement in-app purchases in Android?

367.What is Google Play Billing Library?

368.How do you implement in-app purchases in iOS?

369.What is StoreKit in iOS?

370.How do you validate payment receipts?

371.What is subscription-based payment model?

372.How do you handle payment failures?

373.What is PCI DSS compliance for mobile payments?

374.How do you implement refunds in mobile apps?

375.What is payment tokenization?

376.How do you integrate Google Maps in Android?

377.What is Google Maps SDK for Android?

378.How do you show markers on a map?

379.How do you draw routes on Google Maps?

380.What is Geocoding and Reverse Geocoding?

381.How do you implement location tracking in Android?

382.What is FusedLocationProviderClient?

383.What is the difference between GPS and Network location?

384.How do you implement MapKit in iOS?

385.What is Core Location in iOS?

386.How do you request location permissions in mobile apps?

387.What is geofencing in mobile apps?

388.How do you implement background location tracking?

389.What is location accuracy in mobile apps?

390.How do you optimize battery for location tracking?

391.How do you access camera in Android?

392.What is CameraX in Android?

393.How do you capture images in Android?

394.How do you record videos in mobile apps?

395.What is MediaRecorder in Android?

396.How do you implement camera in iOS?

397.What is AVFoundation in iOS?

398.How do you access photo gallery in mobile apps?

399.What is image compression in mobile apps?

400.How do you implement QR code scanning?

401.What is ML Kit for barcode scanning?

402.How do you play audio in mobile apps?

403.What is ExoPlayer in Android?

404.What is AVPlayer in iOS?

405.How do you implement video streaming?

406.What is picture-in-picture mode?

407.How do you handle different screen sizes for images?

408.What is adaptive bitrate streaming?

409.How do you implement audio recording?

410.What is text-to-speech in mobile apps?

411.How do you implement offline-first architecture?

412.What is SQLite in mobile development?

413.How do you sync offline data with server?

414.What is conflict resolution in offline sync?

415.What is Firebase Offline Persistence?

416.How do you implement data caching strategies?

417.What is LRU cache in mobile apps?

418.How do you handle network connectivity changes?

419.What is the Repository pattern for offline support?

420.How do you implement optimistic updates?

421.What is accessibility in mobile apps?

422.How do you implement content descriptions in Android?

423.What is TalkBack in Android?

424.How do you make apps accessible for screen readers?

425.What is VoiceOver in iOS?

426.How do you implement Dynamic Type in iOS?

427.What are accessibility labels?

428.How do you test accessibility in mobile apps?

429.What is color contrast ratio for accessibility?

430.How do you implement keyboard navigation?

431.How do you implement analytics in mobile apps?

432.What is Firebase Analytics?

433.What is Google Analytics for mobile?

434.How do you track user events in mobile apps?

435.What is Crashlytics for crash reporting?

436.How do you implement custom crash reports?

437.What is App Center for mobile analytics?

438.How do you track app performance metrics?

439.What is ANR rate in Android?

440.What is crash-free users metric?

441.What is Jetpack Compose for Android?

442.How does Jetpack Compose differ from XML views?

443.What is declarative UI in mobile development?

444.What is Kotlin Multiplatform Mobile (KMM)?

445.How does KMM differ from React Native and Flutter?

446.What is SwiftUI in iOS?

447.What is Combine framework in iOS?

448.What is RxJava in Android?

449.What is reactive programming in mobile?

450.What is modularization in mobile apps?

451.What are Dynamic Feature Modules in Android?

452.What is on-demand delivery in mobile apps?

453.What is Instant Apps in Android?

454.What is App Clips in iOS?

455.What is Android NDK (Native Development Kit)?

456.When should you use native code in mobile apps?

457.What is JNI (Java Native Interface)?

458.What is WebView in mobile apps?

459.What is WKWebView in iOS?

460.What is hybrid mobile development?

461.How would you implement a chat application in Android/iOS?

462.How do you implement real-time messaging?

463.How would you build an e-commerce app with cart functionality?

464.How do you implement a news feed like Instagram?

465.How would you implement infinite scroll in a social media app?

466.How do you implement pull-to-refresh functionality?

467.How would you build a music streaming app?

468.How do you implement playlist functionality?

469.How would you build a video calling app?

470.What is WebRTC for video calls?

471.How do you implement file upload progress indicator?

472.How would you implement a multi-language app?

473.What is internationalization (i18n) in mobile apps?

474.How do you implement dark mode in mobile apps?

475.How would you build a fitness tracking app?

476.How do you implement step counter in mobile apps?

477.How would you build a food delivery app?

478.How do you implement order tracking?

479.How would you build a ride-sharing app like Uber?

480.How do you implement real-time location tracking for drivers?

481.How do you debug Android apps?

482.What is Android Studio Debugger?

483.How do you use breakpoints in mobile debugging?

484.What is Logcat in Android?

485.How do you debug iOS apps in Xcode?

486.What is LLDB debugger?

487.How do you debug network calls in mobile apps?

488.What is Charles Proxy for debugging?

489.How do you debug memory leaks?

490.What is LeakCanary in Android?

491.How do you debug UI issues?

492.What is Layout Inspector in Android Studio?

493.What is View Hierarchy Debugger in Xcode?

494.How do you debug crashes in production?

495.How do you read crash logs?

496.What is symbolication in iOS?

497.How do you debug performance issues?

498.How do you profile mobile apps?

499.What is method tracing in Android?

500.How do you debug third-party library issues?