There are a number of device-specific properties that you can access when developing for mobile. See the Unity Scripting API pages for SystemInfo.deviceUniqueIdentifier, SystemInfo.deviceName,SystemInfo.deviceModel, and SystemInfo.operatingSystem for more information.
Pirates often hack an app by removing DRM protection and then redistributing it for free. Unity comes with an anti-piracy check, which is used to determine if your app was altered after it was submitted to the Google Play Store.
To check if your app is genuine (meaning it is not hacked), use the Unity Scripting API Application.genuine property. If this property returns false
, you can inform the app user that they are using a hacked app or you can disable access to some functions of your app.
Note: Use Application.genuineCheckAvailable along with Application.genuine to verify app integrity. Accessing the Application.genuine property is a resource-intensive operation, so do not call it during frame updates or other time-critical code.
To trigger a vibration, call Handheld.Vibrate in your code. Devices lacking vibration hardware ignore this call.
Mobile operating systems have built-in activity indicators that you can activate during slow operations.
Refer to the Activity Indicator Unity Scripting API documentation for examples.
When creating Projects for iOS and Android, you can control the screen orientation of a user’s device. Detecting a change in orientation or forcing a specific orientation is useful for altering game behavior depending on how the user is holding their device.
To retrieve device orientation, use the Screen.orientation property. Orientation can be one of the following:
Orientation | Behavior |
---|---|
Portrait | The device is in portrait mode, with the device held upright and the home button at the bottom. |
PortraitUpsideDown | The device is in portrait mode but upside-down, with the device held upright and the home button at the top. |
LandscapeLeft | The device is in landscape mode, with the device held upright and the home button on the right side. |
LandscapeRight | The device is in landscape mode, with the device held upright and the home button on the left side. |
Control screen orientation by setting Screen.orientation to one of the above options, or to ScreenOrientation.AutoRotation.
When using auto-rotation, you can disable some orientations on a case-by-case basis. See the Scripting API pages for Screen.autorotateToPortrait, Screen.autorotateToPortraitUpsideDown, Screen.autorotateToLandscapeLeft, and Screen.autorotateToLandscapeRight for more information.
2017–05–25 Page published with editorial review
Updated functionality in 5.5
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?
Is something described here not working as you expect it to? It might be a Known Issue. Please check with the Issue Tracker at issuetracker.unity3d.com.
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:
Thanks for helping to make the Unity documentation better!