Releases: Aaron8052/Unity-iOSNative-Plugin
v2.6.3
⚠️ Obsolete API
此版本重命名了如下事件,原有的事件将被标记为Obsolete
Audio
event Action OnAudioSessionRouteChangedEvent
Use AudioSessionRouteChangedEvent instead
NativeUI
event Action OnUIAccessibilityBoldTextStatusChange
Use UIAccessibilityBoldTextStatusChange instead
event Action OnUIContentSizeCategoryChange
Use UIContentSizeCategoryChange instead
event Action<UIInterfaceOrientation> OnStatusBarOrientationChanged
Use StatusBarOrientationChanged instead
新增API
Audio
bool SetActive(bool active)
设置AVAudioSession的激活状态。
bool PrefersNoInterruptionsFromSystemAlerts
设置系统铃声时是否中断Audio Session。
bool AudioInterrupted
当前AudioSession是否被中断(游戏处于后台时无法更新状态,可能导致结果不准确)。
event Action<AVAudioSessionInterruptionType> AudioInterruptionEvent
游戏音频中断与恢复事件
v2.6.2
新增 API
NativeUI
bool UIAccessibilityIsBoldTextEnabled()
系统设置 - 粗体文本。
event Action OnUIAccessibilityBoldTextStatusChange
系统设置 - 粗体文本 状态变更事件。
UIContentSizeCategory PreferredContentSizeCategory
获取系统字体大小,UIContentSizeCategory.Large 为标准大小。
float PreferredContentSizeCategoryScale
获取系统字体大小缩放比例,1f 为 100% 大小。
event Action OnUIContentSizeCategoryChange
系统字体大小变更事件
v2.6.1
⚠️ Obsolete API
Device
string GetCountryCode()
使用 string GetLocaleISOCode() 代替。
新增 API
NativeUI
void OpenURL(string url)
与 Unity Application.OpenURL 作用一致。
Device
bool IsIPhoneNotchScreen()
判断是否为刘海屏/灵动岛机型的 iPhone。
Version GetIOSVersion()
获取当前 iOS 版本,获取失败则返回 new Version(0, 0)。
string GetLocaleISOCode()
获取当前设备的ISO地区码(ISO 3166-1 alpha-2)。
string GetLanguageISOCode()
获取当前设备语言的ISO码(例:zh-Hans-CN)。
Audio
event Action OnAudioSessionRouteChangedEvent
玩家音频设备变更事件,例如:扬声器 -> 蓝牙耳机。
iOSApplication
string GetAlternateIconName()
获取当前使用的 AppIcon,如使用默认图标则返回 null。
void SetAlternateIconName(string iconName)
设置 AppIcon,iconName 传入 null 使用默认图标。
v2.6.0
此版本改用了新的C#语法,因此不再兼容旧版Unity
新增API
Device
bool IsRunningOnIpad()
是否运行在iPad上(不包括Mac)
Notification
void PushNotification(string msg, string title, string identifier, int delay, bool repeats)
原PushNotification的重载版本,支持设置repeats,循环推送通知
void PushNotification(string msg, string title, string identifier, in NSDateComponents dateComp)
支持在指定日期或时间触发通知,见 Apple UNCalendarNotificationTrigger
void PushNotification(string msg, string title, string identifier, in NSDateComponents dateComp)
上面的重载版本,支持设置repeats,可通过NSCalendarUnit指定在何时循环推送通知
NativeShare
void CopyImageToClipboard(string imagePath)
拷贝指定路径的图片到剪切板
void CopyImageToClipboard(byte[] bytes)
拷贝bytes形式的图片到剪切板
void CopyImageToClipboard(Texture2D texture)
拷贝Texture2D形式的图片到剪切板
void CopyStringToClipboard(string @string)
拷贝string到剪切板
void CopyUrlToClipboard(string url)
拷贝URL到剪切板(可以被系统识别为URL而非普通的string)
下列新增函数为原有的
void SaveImageToAlbum(string imagePath, Action<bool> callback = null)函数重载版本
void SaveImageToAlbum(byte[] bytes, Action<bool> callback = null)
保存bytes形式的图片到相册
void SaveImageToAlbum(Texture2D texture, Action<bool> callback = null)
保存Texture2D 形式的图片到相册
v2.5.2
v2.5.1
Commit: 80a6e9c
本更新不会影响游戏项目的运作,但部分API被标记为Obsolete,未来可能会移除
新增API / 类
新增 Audio类
上列新增API为原
Device类中的已有项,功能完全一致
API变动
Device类
原生代码变动
- 将所有extern C 函数命名规范为
类_函数()的格式,防止冲突。此改动不会影响Unity C#端。
v2.5.0
v2.4.3
v2.4.2
v2.4.1
新增API
- iOSApplication类的UserSettings增加对应的Set方法,见#iOSApplication;
功能优化
iCloudKeyValueStore不再需要主动调用Initialize()方法,插件会自动进行初始化;Notification不再需要主动调用Initialize()方法,插件会自动进行初始化;- 重写
iCloudKeyValueStore的IsICloudAvailable()实现。