Skip to content

Releases: Aaron8052/Unity-iOSNative-Plugin

v2.6.3

23 Aug 03:05

Choose a tag to compare

⚠️ 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

30 Jun 04:59

Choose a tag to compare

新增 API

NativeUI

bool UIAccessibilityIsBoldTextEnabled()

系统设置 - 粗体文本。

event Action OnUIAccessibilityBoldTextStatusChange

系统设置 - 粗体文本 状态变更事件。

UIContentSizeCategory PreferredContentSizeCategory

获取系统字体大小,UIContentSizeCategory.Large 为标准大小。

float PreferredContentSizeCategoryScale

获取系统字体大小缩放比例,1f 为 100% 大小。

event Action OnUIContentSizeCategoryChange

系统字体大小变更事件

v2.6.1

24 Apr 03:11

Choose a tag to compare

⚠️ 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

24 Nov 19:30

Choose a tag to compare

v2.6.0 Pre-release
Pre-release

此版本改用了新的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

26 Sep 01:49

Choose a tag to compare

问题修复

  • 修复iPad调用NativeShare.Share()时导致闪退的问题;
  • 修复iPad调用NativeUI.ShowDialog()且style为ActionSheet时,实际展示效果仍为Alert的问题

v2.5.1

25 Sep 21:10

Choose a tag to compare

v2.5.1 Pre-release
Pre-release

Commit: 80a6e9c

本更新不会影响游戏项目的运作,但部分API被标记为Obsolete,未来可能会移除

新增API / 类

新增 Audio

上列新增API为原Device类中的已有项,功能完全一致

API变动

Device

原生代码变动

  • 将所有extern C 函数命名规范为 类_函数() 的格式,防止冲突。此改动不会影响Unity C#端。

v2.5.0

11 Sep 23:45
80c3834

Choose a tag to compare

v2.5.0 Pre-release
Pre-release

此版本为预览版

该版本无C# API变更,但文件结构进行了调整,如果升级后Append打包Xcode出现编译错误,可参考README里的修复方法尝试修复

推荐升级此版本后进行一次Unity和Xcode端的全新打包(清空Unity的打包缓存+打包全新的Xcode工程)。
如果你的项目打包时只能Append Xcode工程,则不建议升级此版本。

优化

  • 7c3df93:将所有子类的头文件和ExternC函数拆分到各自的头文件中
  • 7c3df93:补充C#方法的Summary说明
  • 80c3834 7c3df93:更新、补充说明文档内容

v2.4.3

10 Sep 22:29

Choose a tag to compare

v2.4.3 Pre-release
Pre-release

新增API

iCloudKeyValueStore

  • 8f0e6b3 : iCloudKeyValueStore.DeleteKey()

v2.4.2

08 Sep 21:06

Choose a tag to compare

问题修复

  • d587174: 修复iCloud云存档写入新的key-value之后立刻读取该key会返回空值(或默认值)的问题

优化

不影响C#端API

  • d587174: 规范Native代码命名

v2.4.1

07 Sep 15:40

Choose a tag to compare

新增API

  • iOSApplication类的UserSettings增加对应的Set方法,见#iOSApplication

功能优化

  • iCloudKeyValueStore 不再需要主动调用 Initialize() 方法,插件会自动进行初始化;
  • Notification 不再需要主动调用 Initialize() 方法,插件会自动进行初始化;
  • 重写 iCloudKeyValueStoreIsICloudAvailable() 实现。