iOS デバイスの大半の機能は Input や Handheld クラスを介して公開されています。クロスプラットフォームプロジェクトでは UNITY_IPHONE は iOS 独自の C# コードを条件的にコンパイルするために定義されます。
アクセス可能なデバイス固有のプロパティが多数あります。以下について詳しくは、各スクリプトリファレンスページを参照してください。
一般的にアプリケーションがハッキングされると、AppStore DRM プロテクションを外され、アプリケーションを無料で再配布されてしまいます。Unity での海賊版チェックを使用すると、AppStore に提出した後にハッキングによってアプリケーションが変更されたかを判断することができます。
アプリケーションが本物である (ハッキングされていない) かどうかは、Application.authentic](../ScriptReference/Application-genuine.html) プロパティで確認できます。このプロパティが false
を返す場合、ハッキングされたアプリケーションを使用していることをユーザーに警告したり、特定の機能を無効にしたりすることができます。
ノート: Application.genuineCheckAvailable と Application.genuine
を併用して、アプリケーションの整合性を検証してください。Application.genuine プロパティへのアクセスはリソースを大量に消費するため、フレームの更新やその他のスピードが重視されるコード中には実行すべきではありません。
バイブレーションを行うには Handheld.Vibrate を呼び出します。バイブレーションの機能がないデバイスでは、この呼び出しは無視されることに注意してください。
モバイル OS にはビルトインのアクティビティインジケーターがあり、処理に時間がかかる時に表示すると便利です。使用例については Handheld.StartActivityIndicator docs を参照してください。
iOS と Android デバイス両方で、自由にアプリケーションの画面の向きを制御することができます。ユーザーが持っているデバイスの向きの変更を検出したり、特定の向きに固定することによって、ユーザーがデバイスを持つ向きに合わせてゲームの動作を調整することができます。
デバイスの向きは Screen.orientation プロパティを使って取得できます。以下のような向きがあります。
向き | 動作 |
---|---|
Portrait | 縦向きのモードです。デバイスを直立させると、ホームボタンは下になります。 |
PortraitUpsideDown | 縦向きのモードです。ただし、デバイスを直立させると、ホームボタンが上になります。 |
LandscapeLeft | 縦向きのモードです。デバイスを直立させると、ホームボタンが右側になります。 |
LandscapeRight | 縦向きのモードです。デバイスを直立させると、ホームボタンが左側になります。 |
Screen.orientation を上記のいずれかの向きに設定するか、ScreenOrientation.AutoRotation を使って画面の向きを制御します。自動回転が有効な場合でも、ケースに応じていくつかの向きを無効にすることができます。
詳しくは、以下の API ドキュメントを参照してください。
デバイスの世代によって、サポートされている機能に違いがあり、さらにパフォーマンスも差があります。デバイスの世代は iOS.DeviceGeneration で判断することができます。
一部のディスプレイでは、他のハードウェアが画面の特定の領域を占有しているために、その領域が隠されているか、機能していない場合があります。Screen.cutouts を使用すると、各カットアウトを囲むバウンディングボックスのリストが返されます。
iOS デバイスはディスプレイのカットアウト情報を取得するためのネイティブの API を提供しません。そのため、カットアウトは使用可能な各 iOS デバイスの Xcode プロジェクトにハードコードされています。UnityView.mm
ファイルにある Unity Xcode プロジェクトの ReportSafeAreaChangeForView
関数で、既存のデータを変更したり、デバイスを追加したりできます。
ReplayKit を使用して、ゲームのオーディオと動画を記録し、デバイスのマイクとカメラから取り込んだオーディオと動画の解説を加えることができます。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.