Unity3D技术之Android 脚本高级 Unity 手机脚本
高级Unity手机脚本
设备属性
在Unity中,您可以访问一系列特定设备的属性:
SystemInfo.deviceUniqueIdentifier:唯一的设备标识。SystemInfo.deviceName:用户指定的设备名称。SystemInfo.deviceModel:设备型号。SystemInfo.operatingSystem:操作系统名称和版本。
反盗版检查
在当前的应用市场中,通过删除App Store数字版权管理(DRM)保护来破解应用程序,并使其变成免费应用的现象非常普遍。Unity为开发者配备了反盗版检查机制,可确定应用程序在提交至App Store之后是否经过修改。
您可以通过Application.genuine属性检查应用程序是否为正版(非盗版)。如果该属性的返回值为false,那么可以通知应用程序的用户,他/她正在使用破解的应用程序,或者禁止其访问应用程序上的某些功能。
需要注意的是,Application.genuineCheckAvailable应与Application.genuine一并使用,以确认应用程序的完整性可得到实际验证。访问Application.genuine属性是一项开销较大的操作,不建议在帧更新期间或其他时序要求严格的代码中使用。
震动支持
在Unity中,可通过调用Handheld.Vibrate方法触发设备震动。不过,缺乏震动硬件的设备将直接忽略这一调用。
活动指示器
移动操作系统通常配有内置的活动指示器,您可以在应用程序缓慢运行期间使用它。请参阅[Handheld.StartActivityIndicator文档](Handheld.StartActivityIndicator docs)作为使用范本。
屏幕方向
Unity在iOS和Android平台上允许您控制当前屏幕的方向。如果您需要创建取决于用户如何持有设备的游戏行为,那么检测方向更改或强制保持某些特定的方向将是非常实用的功能。
您可以通过访问Screen.orientation属性检索设备方向,方向可能是以下几种之一:
- 纵向模式 (Portrait):设备处于纵向模式,垂直放置,home键位于下方。
- 纵向倒置模式 (PortraitUpsideDown):设备处于纵向模式,但上下颠倒,即设备颠倒放置,home键位于上方。
- 水平向左模式 (LandscapeLeft):设备处于水平模式,垂直放置,home键在右边。
- 水平向右模式 (LandscapeRight):设备处于水平模式,垂直放置,home键在左边。
您可以将Screen.orientation设置成上述一种模式来控制屏幕方向。如需自动旋转,可将其设置成ScreenOrientation.AutoRotation 。同时,您可以根据具体情况禁用某些方向:
Screen.autorotateToPortrait:允许垂直方向。Screen.autorotateToPortraitUpsideDown:允许垂直颠倒方向。Screen.autorotateToLandscapeLeft:允许水平向左方向。Screen.autorotateToLandscapeRight:允许水平向右方向。
高级iOS脚本
确定设备的代
不同代的iOS设备支持不同的功能,并且性能差别很大。开发者应查询设备的代,并确定应禁用哪些功能以补偿性能较慢的设备。可通过iPhone.generation属性查看设备的代。
高级Android脚本
确定设备的代
不同的Android设备支持不同的功能,并且性能差别也很大。开发者应确定特定的设备或设备系列,并决定应禁用哪些功能以补偿性能较慢的设备。针对目前使用的Android设备,有一系列特定的设备属性可供使用。
需要注意的是,Android应用市场会进行一些额外的兼容性过滤。因此,如果在一些老式、运行速度慢的设备上使用针对OpenGL ES 2(OGLES2)优化的ARMv7专用应用程序,您不必为此担心兼容性问题。