Skip to content
DeveloperMemos
Blog
About
Jetpack Compose
Flutter
Contact
Tags
@AppStorage
(1)
@Binding
(1)
@MainActor
(1)
@Observable
(1)
AAR Library
(1)
ADB
(4)
AI Conversations
(1)
API
(1)
APK
(1)
ASO
(1)
AVAssetImageGenerator
(1)
AVFoundation
(3)
AVSpeechSynthesizer
(1)
Absolute Value
(1)
Abstract Classes
(2)
Accessibility
(2)
Advanced Types
(1)
Alamofire
(2)
Alert
(1)
Algorithms
(1)
Align
(1)
Android
(83)
Android 14
(1)
Android Development
(42)
Android Studio
(4)
AndroidView
(1)
Animation
(1)
Animations
(1)
Annotations
(1)
App Deployment
(1)
App Development
(7)
App Distribution
(1)
App Icon
(1)
App Installation
(2)
App Rating
(1)
App Review
(1)
App Standby
(1)
App Store
(5)
App Store Compliance
(1)
App Store Connect
(1)
App Store Optimization
(1)
App Testing
(1)
App Transfer
(1)
App Uninstallation
(1)
AppBar
(2)
AppDelegate
(2)
AppStorage
(1)
Apple
(1)
Apple Silicon
(1)
Application
(1)
Apply
(1)
Architecture
(1)
Archiving
(1)
Array
(8)
Array Operations
(1)
Arrays
(14)
Arrow Functions
(1)
Associated Values
(1)
Async
(1)
Async Tasks
(1)
Async/Await
(1)
Asynchronous Code
(1)
Asynchronous Programming
(3)
Audio
(1)
Audio Extraction
(1)
Auto Layout
(1)
Automation
(2)
Background Processing
(1)
Background Task
(1)
Backgrounding
(1)
Base64
(3)
Bash
(1)
Battery
(1)
Best Practices
(1)
Binding
(2)
Boolean
(2)
Broadcast Receiver
(1)
BroadcastReceiver
(1)
Bug Fixing
(1)
BuildConfig
(2)
Button Styles
(1)
CSS
(5)
CSS Frameworks
(1)
CSV
(1)
Caching
(1)
Caffeinate
(1)
Calendar
(2)
Callbacks
(3)
Cancellation
(2)
Capitalization
(1)
Card
(1)
CaseIterable
(1)
Casting
(1)
Charts
(1)
ChatGPT
(1)
Checkbox
(1)
Cherry-Pick
(1)
China
(1)
Chunking
(2)
Circular Progress Bar
(1)
CircularProgressIndicator
(1)
Class
(1)
Classes
(1)
Cloning
(4)
Cloning a List
(1)
Closures
(2)
CocoaPods
(3)
Codable
(1)
Code Execution
(1)
Code Expressions
(1)
Code Logic
(1)
Code Organization
(2)
Code Preview
(1)
Code Snippets
(1)
Collections
(2)
Color
(1)
Colors
(1)
Combine
(3)
Combine Framework
(1)
CombineLatest
(1)
Command Line
(5)
Commit
(1)
Companion Objects
(1)
Component
(1)
Compose
(16)
CompositionLocal
(1)
Concurrency
(7)
Concurrent Programming
(1)
Conditional Rendering
(2)
Conditional Statements
(3)
Const Keyword
(1)
Container
(1)
Context
(2)
Context API
(1)
Control Flow
(1)
Conversion
(1)
Core Data
(1)
CoreSimulator
(1)
Coroutine
(1)
Coroutines
(8)
Counter
(1)
Crash
(1)
Creation Date
(1)
Cross-platform
(1)
Cryptography
(1)
CurrentValueSubject
(1)
Custom Font
(1)
Custom Modifier
(1)
Custom Types
(1)
Custom Views
(1)
Customization
(1)
Dark Mode
(2)
Dart
(69)
Dart 3
(1)
Dart Programming Language
(1)
Data Filtering
(1)
Data Object
(1)
Data Passing
(1)
Data Structures
(1)
Data Visualization
(1)
Data sharing
(1)
Data storage
(1)
DataStore
(1)
Database
(4)
Date
(3)
Date Comparison
(1)
Date Formatter
(1)
Date Manipulation
(1)
Date and Time
(2)
DateFormatter
(1)
DateTime
(1)
Datetime
(1)
Debug APK
(1)
Debug Build
(1)
Debugging
(3)
Decoding
(1)
Defer Statement
(1)
Delay
(1)
Delegate Pattern
(1)
Delegate Properties
(1)
Deno
(11)
Dependabot
(1)
Dependencies
(1)
Dependency Injection
(1)
Dependency Management
(3)
Deprecation
(2)
Design Pattern
(1)
Design Patterns
(2)
Destructuring Declarations
(1)
Development
(8)
Development Errors
(1)
Device
(1)
Device Orientation
(1)
Device Settings
(1)
Device Sleep
(1)
Dialer App
(1)
Dictionary
(1)
Directory
(1)
Dismissible
(1)
DispatchQueues
(1)
Dispatcher.IO
(1)
Dispatcher.Main
(1)
DisposableEffect
(1)
Divider
(2)
Document Storage
(1)
DotEnv
(1)
Drawable
(1)
Duration
(1)
Dynamic Views
(1)
ES2015
(1)
ES6
(2)
Elvis Operator
(1)
Email Validation
(1)
Encoding
(2)
Enum
(3)
Enumerate Function
(1)
Enumerated
(1)
Enumerations
(1)
Enums
(4)
Environment Variables
(2)
EnvironmentObject
(1)
Error
(1)
Error Handling
(14)
Error Resolution
(1)
Even Numbers
(1)
Examples
(1)
Exception
(1)
Exception Handling
(1)
Exceptions
(1)
Express
(2)
Extension
(1)
Extension Functions
(1)
FFmpeg
(3)
FVM
(1)
Factory
(1)
Factory Method
(1)
Fastlane
(4)
Fetch
(1)
Fetch API
(1)
Fetch Request
(1)
File
(1)
File Handling
(3)
File I/O
(1)
File IO
(1)
File Management
(2)
File Selection
(1)
FileManager
(1)
Filename
(1)
Files
(1)
Files App
(1)
Filter
(1)
Final Keyword
(1)
Firebase
(3)
FirebaseAnalytics
(1)
Fix
(1)
FlatList
(1)
Flexbox
(1)
Flexible
(1)
Float
(1)
Flutter
(104)
Flutter Tips
(15)
Flutter Tutorials
(1)
Focused Modifier
(1)
Fonts
(1)
ForEach
(1)
Form view
(1)
Frame Rate
(1)
Freezed
(1)
Front-End Development
(1)
Front-end
(1)
Front-end Development
(1)
Frontend Development
(8)
Function Passing
(1)
Functional Components
(1)
Functional Programming
(5)
Functions
(6)
FutureBuilder
(1)
Futures
(1)
GET_TASKS
(1)
GSON
(1)
Game Development
(1)
Generators
(1)
Generics
(2)
GeometryReader
(1)
Gesture
(1)
Getters
(1)
Git
(5)
GitHub
(1)
GitHub Actions
(2)
Go
(1)
Google I/O
(1)
Google Mobile Ads
(1)
Google Play
(3)
Gradient Text
(1)
Gradle
(2)
Grid Layout
(1)
Group
(1)
HEIC
(1)
HEIF
(1)
HStack
(2)
HTTP Request
(1)
HTTP Server
(1)
Handler
(1)
HandlerThread
(1)
HashMap
(1)
Higher-Order Functions
(1)
Hive
(1)
Hoisting State
(1)
Hooks
(2)
Hyperlinks
(1)
ITMS-90899
(1)
IconButton
(1)
Image Editing
(1)
Image Format
(1)
Image Loading
(1)
Image Selection
(1)
ImageMagick
(1)
Immutability
(1)
Implementation
(1)
Import
(1)
Independent Developers
(1)
Indexing
(1)
Info.plist
(2)
Inheritance
(1)
Inline Functions
(1)
Instance Creation
(1)
Int
(1)
Interactive Shell
(1)
Interface Builder
(1)
Interfaces
(2)
Interstitial Ads
(1)
InvalidDefinitionException
(1)
Issues
(4)
Iterables
(1)
Iteration
(2)
JAR File
(1)
JSON
(6)
JSX
(1)
Jackson
(2)
Java
(4)
Java.time
(1)
JavaScript
(30)
JavaScript Testing
(1)
Javascript
(3)
Jest
(1)
Jetpack
(15)
Jetpack Compose
(22)
JobScheduler
(2)
Jsoup
(1)
KSP
(1)
KeyPath
(1)
Keyboard Type
(1)
Keywords
(1)
Kotlin
(140)
Kotlin Coroutines
(2)
Kotlin Flow
(1)
Lambda Expressions
(1)
Language Features
(1)
Layering Views
(1)
Layout
(4)
Layout Design
(1)
Lazy Initialization
(2)
LazyColumn
(1)
Lifecycle
(1)
LifecycleScope
(1)
Light Mode
(1)
Linter
(1)
Linting
(2)
List
(6)
List Initialization
(1)
ListView
(1)
Lists
(11)
LocalClipboardManager
(1)
LocalContext
(1)
LocalUriHandler
(1)
Locale
(1)
Localizable.strings
(1)
Localization
(9)
LocalizedStringKey
(2)
Logging
(3)
Loop
(1)
Looping
(1)
Looping Statements
(1)
Loops
(1)
Lorem Ipsum
(1)
M4A
(1)
MARK Comments
(1)
MODE_PRIVATE
(1)
MOV
(1)
MP3
(1)
MP4
(1)
Mac
(1)
MacOS
(1)
Macros
(1)
Manifest
(2)
Manifest Permissions
(1)
Material UI
(1)
Material3
(1)
Math
(2)
Mathematical Operations
(1)
Memoization
(1)
Memory Management
(1)
Migration
(1)
Mixins
(2)
Mobile App
(1)
Mobile App Development
(1)
Mobile Development
(13)
Mobile Testing
(1)
Mock Data
(1)
Modal Presentation
(1)
Modal View Controllers
(1)
Modifiers
(2)
Modulo Operator
(2)
Moshi
(1)
Multidex
(1)
Mutable Lists
(1)
MutableList
(1)
MutableState
(1)
MutableStateFlow
(1)
Mutating
(1)
NSAttributedString
(1)
NSCameraUsageDescription
(1)
NSDataDetector
(1)
NSLocalizedString
(1)
Navigation
(4)
Navigation Bar
(1)
NavigationStack
(1)
Networking
(1)
Node.js
(7)
NotificationChannel
(1)
Null Checking
(1)
Null Safety
(4)
Number
(2)
Numbers
(1)
Numeric Operations
(1)
Oak
(1)
Object
(2)
Object-Oriented Programming
(3)
ObservableObject
(2)
Observables
(1)
Odd Numbers
(1)
OneSignal
(2)
OpenAI
(1)
Optional
(1)
Optional Binding
(1)
Optional Chaining
(1)
Optionals
(2)
Overlay Modifier
(1)
PHPickerViewController
(2)
Package Management
(2)
Package Managers
(1)
Packages
(1)
Padding
(1)
Padding Modifier
(1)
Parcelize
(1)
Parsing
(2)
Password Generation
(1)
Performance
(3)
Performance Optimization
(2)
Permissions
(3)
Phone Number Validation
(1)
Picasso Library
(1)
Play Store
(1)
PopScope
(1)
PreferredSize
(1)
Preview App
(1)
Previews
(1)
Privacy
(1)
Privacy Manifest
(2)
Process Name
(1)
Programmatic UI
(1)
Programming
(41)
Programming Language
(1)
ProgressView
(1)
Promises
(1)
Properties
(1)
Property List
(1)
Property Observers
(1)
Property Wrapper
(1)
Property wrapper
(1)
PropertyListDecoder
(1)
Protocol
(1)
Provider
(2)
Pub Get
(1)
Push Notifications
(1)
Python
(7)
REPL
(1)
REST API
(1)
Radio Button
(1)
Rambling
(1)
Random
(5)
Random Boolean
(2)
Random Number Generation
(1)
Random Strings
(2)
Range
(1)
Raw Strings
(1)
React
(21)
React Native
(3)
React.js
(1)
Reactive Programming
(1)
Readability
(1)
Reading Files
(1)
Realm
(1)
RealmSwift
(1)
Record Type
(1)
RecyclerView
(1)
RefreshIndicator
(1)
Regular Expression
(1)
Regular Expressions
(2)
Repository Pattern
(2)
Requesting Permissions
(1)
Resource Cleanup
(1)
Retrofit
(1)
Riverpod
(6)
Room
(2)
Ruby
(3)
Runtime Errors
(1)
RxCocoa
(1)
RxJava
(2)
RxSwift
(2)
SDK Version
(1)
SE-0345
(1)
SF Symbols
(1)
SFSymbols
(2)
SQFlite
(1)
SQLite
(2)
Safe Area
(1)
Scope Functions
(1)
Scraping
(1)
Screen Cutouts
(1)
Screenshot Requirements
(1)
Scripting
(1)
ScrollView
(1)
Scrollable VStack
(1)
Sealed Classes
(1)
Security
(4)
Segue
(1)
Serialization
(3)
Set
(1)
Setters
(1)
Shallow Copy
(1)
Shared Links
(1)
SharedPreferences
(4)
Sheet
(1)
Shuffle
(2)
Shuffling
(1)
Side Effects
(1)
Singleton
(1)
Singleton Design Pattern
(1)
Singleton Pattern
(1)
Singletons
(1)
Slider View
(1)
SnackBar
(1)
SnapKit
(1)
Sort
(1)
Sorting
(4)
Sound
(1)
Sound Null Safety
(1)
Spacer
(1)
Spacing
(2)
Spacing and Alignment
(1)
Spread Operator
(1)
Stable
(1)
StandBy Mode
(1)
State
(1)
State Management
(8)
State management
(1)
StateObject
(1)
StatefulBuilder
(1)
StatefulWidget
(1)
Static Analysis
(3)
StoreKit
(1)
Streams
(2)
Stride
(1)
String
(8)
String Catalogs
(1)
String Conversion
(1)
String Interpolation
(2)
String Manipulation
(8)
String Templates
(1)
String manipulation
(1)
Strings
(1)
Struct
(1)
Structs
(1)
Sublist
(1)
Swift
(153)
Swift 5.0
(1)
Swift 5.9
(1)
Swift Package Manager
(1)
Swift Programming
(3)
Swift programming
(1)
SwiftData
(3)
SwiftUI
(91)
SwiftUI Tips
(1)
SwiftyBeaver
(1)
Swipe to Delete
(1)
Switch Statement
(1)
Switch Statements
(1)
Symbol
(1)
SymbolConfiguration
(1)
Synchronization
(2)
Syntax
(3)
System.currentTimeMillis
(1)
Tailwind CSS
(2)
Technical Debt
(1)
Terminal
(3)
Ternary Operator
(1)
Test
(1)
TestFlight
(1)
Text
(2)
Text Alignment
(2)
Text Component
(1)
Text Field
(1)
Text-to-Speech
(1)
TextEditor
(1)
Thread.sleep
(1)
Timber
(1)
Time
(2)
Time Formatting
(1)
TimeInterval
(1)
Timer
(3)
Timing
(1)
Toast
(1)
ToolbarItem
(1)
Trimming
(1)
Troubleshooting
(2)
Tuples
(1)
Tutorial
(2)
Type
(1)
Type Aliases
(1)
Type Conversion
(1)
Type System
(1)
TypeScript
(21)
Typealias
(1)
Typescript
(4)
UI Design
(11)
UI Development
(3)
UIActivityIndicatorView
(1)
UIAlertController
(1)
UIApplication
(1)
UIApplicationDelegate
(1)
UIButton
(4)
UIButton.Configuration
(1)
UIDocumentPickerViewController
(1)
UIFont
(1)
UIHostingController
(1)
UIImage
(3)
UIImageView
(1)
UIKit
(4)
UILabel
(2)
UINavigationBar
(1)
UIStackView
(1)
UITableView
(2)
UIView
(2)
UIViewControllerRepresentable
(2)
UIWindow
(1)
UNNotificationSound
(1)
URL
(3)
URL Detection
(1)
URLSession
(1)
UUID
(3)
Uninstalling Apps
(1)
Unit Testing
(4)
Unit Tests
(2)
Unix Timestamp
(1)
Upgrade
(1)
Upgrading
(1)
Uri.parse
(1)
UseCases
(1)
User Defaults
(1)
User Interaction
(2)
User Interface
(9)
User Responses
(1)
UserDefaults
(2)
VIPS
(1)
VStack
(3)
Varargs
(1)
Variables
(2)
Version Control
(6)
Versioning
(1)
Video Conversion
(1)
Video Editing
(1)
Video Encoding
(1)
View Binding
(1)
View Lifecycle
(1)
View lifecycle
(1)
ViewModel
(1)
ViewModelScope
(1)
ViewModifiers
(1)
Views
(1)
Visible Cells
(1)
WCSession
(1)
WatchOS
(1)
Weak References
(1)
Web Design
(1)
Web Development
(6)
Web Scraping
(1)
WebM
(1)
Widget
(6)
Widget Rotation
(1)
Widgets
(12)
WorkManager
(3)
Writing Files
(1)
XCode 15
(1)
XML
(1)
Xcode
(14)
YAML
(2)
Yarn
(1)
appendQueryParameter
(1)
as operator
(1)
assertion
(1)
async
(1)
audio conversion
(1)
await
(1)
build.gradle
(1)
bundletool
(1)
cached_property
(1)
const declaration
(1)
contentShape
(1)
dependencies
(1)
dismiss()
(1)
dotenv
(1)
dropLast
(1)
ffmpeg
(1)
fillMaxHeight
(1)
fillMaxSize
(1)
fillMaxWidth
(1)
fitsSystemWindows
(1)
forever
(1)
format
(1)
fullScreenCover
(1)
git
(1)
goAsync
(1)
iCloud
(1)
iOS
(63)
iOS 13
(1)
iOS 13.0
(1)
iOS 17
(4)
iOS Development
(40)
iOS SDK
(1)
iOS development
(2)
iPad
(1)
if Statements
(1)
intl
(1)
keepScreenOn
(1)
lateinit modifier
(1)
let Expressions
(1)
let declaration
(1)
localStorage
(1)
logs
(1)
macOS
(1)
nil coalescing operator
(1)
npm
(2)
npx
(1)
onAppear
(3)
onChange
(1)
onDisappear
(1)
onReceive Modifier
(1)
package.json
(1)
popLast
(1)
print
(1)
println
(1)
registerForActivityResult
(1)
removeLast
(1)
resource management
(1)
scenePhase
(1)
scripts
(1)
sprintf
(1)
string formatting
(1)
tintColor
(1)
tools:node
(1)
use function
(1)
useEffect
(2)
useReducer
(1)
useRef
(1)
useState
(1)
version control
(1)
versionCode
(1)
versionName
(1)
viewDidAppear()
(1)
when Expressions
(1)
withContext
(1)
z-index
(1)