Comments (1)
iOS:
here is the documentation: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/#//apple_ref/occ/instp/UIDevice/identifierForVendor
An alphanumeric string that uniquely identifies a device to the app’s vendor. (read-only)
Declaration
SWIFT
var identifierForVendor: NSUUID? { get }
OBJECTIVE-C
@Property(nonatomic, readonly, strong) NSUUID *identifierForVendor
Discussion
The value of this property is the same for apps that come from the same vendor running on the same device. A different value is returned for apps on the same device that come from different vendors, and for apps on different devices regardless of vendor.
Normally, the vendor is determined by data provided by the App Store. If the app was not installed from the app store (such as enterprise apps and apps still in development), then a vendor identifier is calculated based on the app’s bundle ID. The bundle ID is assumed to be in reverse-DNS format.
On iOS 6, the first two components of the bundle ID are used to generate the vendor ID. if the bundle ID only has a single component, then the entire bundle ID is used.
On IOS 7, all components of the bundle except for the last component are used to generate the vendor ID. If the bundle ID only has a single component, then the entire bundle ID is used.
Table 1 shows a collection of bundle IDs and which portions of the bundle ID the system uses to calculate the vendor ID.
Table 1Example bundle identifiers
Bundle ID
iOS 6.x
iOS 7.x
com.example.app1
com.example.app1
com.example.app1
com.example.app2
com.example.app2
com.example.app2
com.example.app.app1
com.example.app.app1
com.example.app.app1
com.example.app.app2
com.example.app.app2
com.example.app.app2
example
example
example
For example, com.example.app1 and com.example.app2 would appear to have the same vendor ID.
If the value is nil, wait and get the value again later. This happens, for example, after the device has been restarted but before the user has unlocked the device.
The value in this property remains the same while the app (or another app from the same vendor) is installed on the iOS device. The value changes when the user deletes all of that vendor’s apps from the device and subsequently reinstalls one or more of them. The value can also change when installing test builds using Xcode or when installing an app on a device using ad-hoc distribution. Therefore, if your app stores the value of this property anywhere, you should gracefully handle situations where the identifier changes.
Android
So, I first check the Serial of the device:
https://developer.android.com/reference/android/os/Build.html#SERIAL
Then if that doesn't resolve I get the android_id:
https://developer.android.com/reference/android/provider/Settings.Secure.html#ANDROID_ID
So the hardware manufacturers are not setting the serial :(
Some proposed changes would be to just get the ANDROID_ID I guess
from deviceinfoplugin.
Related Issues (20)
- DeviceName returns missingMethodException HOT 1
- Attempting to JIT compile method ... while running in aot-only mode. HOT 2
- Getting IMEI of device HOT 1
- TypeLoadException when loading Android F# Libraries HOT 2
- Retrieve Bundle Id/Package Name HOT 1
- DeviceId changes after uninstalling and installing the app. IOs HOT 2
- This functionality is not implemented in the portable version of this assembly HOT 6
- Android 9 Version Incorrect HOT 3
- can't get iOS model HOT 1
- Operating System installation date HOT 3
- [URGENT] Cannot get "Platform" value before a window is being activated in UWP project HOT 4
- CrossDeviceInfo.Current.VersionNumber return 0.0 on Android Pie HOT 3
- System.NotImplementedException during xUnit test from Xam.Plugins.Settings HOT 2
- Sequence contains no elements when internet is disabled HOT 2
- AppVersion format for all 3 platforms is not consistent HOT 1
- I guess we should use Xamarin.Essentials now instead of this plugin? HOT 1
- Id - what does it represent and what permission it requires HOT 1
- Visual Studio and DeviceInfo Match but OS on Android Phone says 9.1 HOT 3
- Feature Request: disclosing PhoneId (aka UDID in iOS)
- Add support for net6.0-windows
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from deviceinfoplugin.