iOS vs Android 开发对照手册

iOS vs Android 开发对照手册


前言

作为一名移动开发者,你可能经常需要在 iOS 和 Android 之间切换。这份手册旨在提供一个清晰、快速的对照参考,帮你定位两个平台中对应的概念和 API。


一、基础数据类型

字符串

· iOS:NSString

· Android:String

数字

· iOS:NSNumber

· Android:Integer / Long / Double

字节

· iOS:NSData

· Android:byte[]

可变字节

· iOS:NSMutableData

· Android:ByteArrayOutputStream

数组

· iOS:NSArray

· Android:List / ArrayList

可变数组

· iOS:NSMutableArray

· Android:ArrayList

字典

· iOS:NSDictionary

· Android:HashMap / Map

可变字典

· iOS:NSMutableDictionary

· Android:HashMap

布尔值

· iOS:BOOL / YES / NO

· Android:boolean / true / false


二、线程与并发

任务队列

· iOS:NSOperationQueue

· Android:ExecutorService

后台线程

· iOS:

复制代码
dispatch_async(dispatch_get_global_queue(0, 0)) {
    // 后台任务
}

· Android:

复制代码
new Thread(() -> {
    // 后台任务
}).start();

切回主线程

· iOS:

复制代码
dispatch_async(dispatch_get_main_queue()) {
    // 更新UI
}

· Android:

复制代码
runOnUiThread(() -> {
    // 更新UI
});

延迟执行

· iOS:

复制代码
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 
              Int64(delay * NSEC_PER_SEC)), 
              dispatch_get_main_queue()) {
    // 延迟任务
}

· Android:

复制代码
new Handler().postDelayed(() -> {
    // 延迟任务
}, delayMillis);

定时器

· iOS:Timer.scheduledTimer

· Android:Handler.postDelayed 循环


三、网络请求

HTTP 客户端

· iOS:URLSession

· Android:OkHttp / HttpURLConnection

请求对象

· iOS:URLRequest

· Android:Request (OkHttp)

响应对象

· iOS:HTTPURLResponse

· Android:Response (OkHttp)

JSON 解析

· iOS:JSONSerialization / Codable

· Android:Gson / Moshi / JSONObject

图片加载

· iOS:Kingfisher / SDWebImage

· Android:Glide / Coil / Picasso

网络监听

· iOS:NWPathMonitor

· Android:ConnectivityManager


四、数据存储

键值对

· iOS:UserDefaults

· Android:SharedPreferences

文件目录

· iOS:

复制代码
FileManager.default.urls(
    for: .documentDirectory,
    in: .userDomainMask
)[0]

· Android:

复制代码
context.getFilesDir()

数据库

· iOS:CoreData / SQLite

· Android:Room / SQLiteDatabase

ORM框架

· iOS:CoreData / Realm

· Android:Room / Realm

安全存储

· iOS:Keychain

· Android:Keystore

缓存

· iOS:NSCache

· Android:LruCache


五、UI 组件

页面控制器

· iOS:UIViewController

· Android:Activity / Fragment

基础视图

· iOS:UIView

· Android:View

布局容器

· iOS:UIStackView / Auto Layout

· Android:LinearLayout / ConstraintLayout

列表视图

· iOS:UITableView / UICollectionView

· Android:RecyclerView

按钮

· iOS:UIButton

· Android:Button

文本标签

· iOS:UILabel

· Android:TextView

文本输入

· iOS:UITextField

· Android:EditText

图片显示

· iOS:UIImageView

· Android:ImageView

滚动视图

· iOS:UIScrollView

· Android:ScrollView

弹窗

· iOS:UIAlertController

· Android:AlertDialog

进度指示

· iOS:UIActivityIndicatorView

· Android:ProgressBar

Web视图

· iOS:WKWebView

· Android:WebView

导航栏

· iOS:UINavigationController

· Android:Toolbar / ActionBar

标签栏

· iOS:UITabBarController

· Android:BottomNavigationView


六、生命周期

创建

· iOS:viewDidLoad()

· Android:onCreate()

可见

· iOS:viewWillAppear()

· Android:onStart()

获取焦点

· iOS:viewDidAppear()

· Android:onResume()

失去焦点

· iOS:viewWillDisappear()

· Android:onPause()

不可见

· iOS:viewDidDisappear()

· Android:onStop()

销毁

· iOS:deinit / dealloc

· Android:onDestroy()

内存警告

· iOS:didReceiveMemoryWarning()

· Android:onLowMemory()


七、权限管理

请求权限

· iOS:通过具体服务请求

· Android:requestPermissions()

检查权限

· iOS:检查授权状态

· Android:checkSelfPermission()

定位

· iOS:CLLocationManager

· Android:FusedLocationProviderClient

相机

· iOS:AVCaptureDevice

· Android:CameraX / Camera2

相册

· iOS:PHPhotoLibrary

· Android:ActivityResultContracts.GetContent()

通知

· iOS:UNUserNotificationCenter

· Android:NotificationManager


八、通知系统

本地通知

· iOS:UNUserNotificationCenter

· Android:NotificationManager + NotificationChannel

推送通知

· iOS:APNs

· Android:FCM

通知构建

· iOS:UNNotificationContent

· Android:NotificationCompat.Builder

通知动作

· iOS:UNNotificationAction

· Android:PendingIntent

应用内广播

· iOS:NotificationCenter

· Android:LiveData / EventBus


九、加密安全

AES加密

· iOS:CryptoKit / CommonCrypto

· Android:javax.crypto.Cipher

RSA加密

· iOS:Security.framework

· Android:javax.crypto.Cipher

Hash

· iOS:CryptoKit / CommonCrypto

· Android:MessageDigest

Base64

· iOS:Data(base64Encoded:)

· Android:android.util.Base64

安全存储

· iOS:Keychain

· Android:Keystore


十、蓝牙 BLE

中心管理器

· iOS:CBCentralManager

· Android:BluetoothAdapter

外设对象

· iOS:CBPeripheral

· Android:BluetoothDevice

GATT客户端

· iOS:CBPeripheral

· Android:BluetoothGatt

服务

· iOS:CBService

· Android:BluetoothGattService

特征值

· iOS:CBCharacteristic

· Android:BluetoothGattCharacteristic

扫描回调

· iOS:CBCentralManagerDelegate

· Android:ScanCallback

连接回调

· iOS:CBPeripheralDelegate

· Android:BluetoothGattCallback

开始扫描

· iOS:scanForPeripherals()

· Android:startScan()

停止扫描

· iOS:stopScan()

· Android:stopScan()

连接设备

· iOS:connect()

· Android:connectGatt()

发现服务

· iOS:discoverServices()

· Android:discoverServices()

写入数据

· iOS:writeValue()

· Android:writeCharacteristic()

开启通知

· iOS:setNotifyValue()

· Android:setCharacteristicNotification()


十一、常用第三方库

网络

· iOS:Alamofire

· Android:Retrofit + OkHttp

图片

· iOS:Kingfisher

· Android:Glide / Coil

JSON

· iOS:Codable (原生)

· Android:Gson / Moshi

依赖注入

· iOS:Swinject

· Android:Dagger Hilt / Koin

响应式

· iOS:Combine (原生) / RxSwift

· Android:Flow (原生) / RxJava

数据库

· iOS:Realm / CoreData

· Android:Room / Realm

日志

· iOS:SwiftyBeaver

· Android:Timber


十二、开发工具

IDE

· iOS:Xcode

· Android:Android Studio

语言

· iOS:Swift / Objective-C

· Android:Kotlin / Java

构建工具

· iOS:Xcodebuild / SPM

· Android:Gradle

包管理

· iOS:CocoaPods / SPM

· Android:Maven / Gradle

UI设计

· iOS:Storyboard / SwiftUI

· Android:XML / Jetpack Compose

性能分析

· iOS:Instruments

· Android:Profiler


总结

iOS 特点

· 注重一致性、流畅体验

· Swift (现代) / ObjC (遗留)

· UIKit (命令式) / SwiftUI (声明式)

· 学习曲线相对平缓,文档统一

Android 特点

· 注重灵活性、定制能力

· Kotlin (现代) / Java (遗留)

· View系统 (命令式) / Compose (声明式)

· 碎片化较多,需适配不同厂商


相关推荐
米码收割机3 分钟前
【Android】基于安卓app的健身房会员管理系统(源码+部署方式+论文)[独一无二]
android
酿情师9 分钟前
2026软件系统安全赛初赛RSA(赛后复盘)
android·网络·安全·密码学·rsa
Digitally13 分钟前
如何轻松地使用隔空投送将iPhone内容传输到Android
android·ios·iphone
lishutong100618 分钟前
Android 性能诊断 V2:基于 Agent Skill 的原生 IDE 融合架构
android·ide·架构
恋猫de小郭27 分钟前
AGP 9.2 开始,Android 上协程启动和取消速度提升两倍
android·前端·flutter
devlei8 小时前
从源码泄露看AI Agent未来:深度对比Claude Code原生实现与OpenClaw开源方案
android·前端·后端
阿拉斯攀登11 小时前
从入门到实战:CMake 与 Android JNI/NDK 开发全解析
android·linux·c++·yolo·cmake
冬奇Lab11 小时前
相机录像流程:MediaRecorder与Camera2的协作之道
android·音视频开发·源码阅读
麦客奥德彪12 小时前
Jetpack Compose 常用开发总结
android
麦客奥德彪12 小时前
客户端 Trace Benchmark 体系设计
ios·数据分析