| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef BASE_IOS_DEVICE_UTIL_H_ |
| #define BASE_IOS_DEVICE_UTIL_H_ |
| |
| #include <string> |
| |
| namespace ios { |
| namespace device_util { |
| |
| // Returns the hardware version of the device the app is running on. |
| // |
| // The returned string is the string returned by sysctlbyname() with name |
| // "hw.machine". Possible (known) values include: |
| // |
| // iPhone1,1 -> iPhone 1G |
| // iPhone1,2 -> iPhone 3G |
| // iPhone2,1 -> iPhone 3GS |
| // iPhone3,1 -> iPhone 4/AT&T |
| // iPhone3,2 -> iPhone 4/Other Carrier? |
| // iPhone3,3 -> iPhone 4/Other Carrier? |
| // iPhone4,1 -> iPhone 4S |
| // |
| // iPod1,1 -> iPod touch 1G |
| // iPod2,1 -> iPod touch 2G |
| // iPod2,2 -> ? |
| // iPod3,1 -> iPod touch 3G |
| // iPod4,1 -> iPod touch 4G |
| // iPod5,1 -> ? |
| // |
| // iPad1,1 -> iPad 1G, WiFi |
| // iPad1,? -> iPad 1G, 3G <- needs 3G owner to test |
| // iPad2,1 -> iPad 2G, WiFi |
| // |
| // AppleTV2,1 -> AppleTV 2 |
| // |
| // i386 -> Simulator |
| // x86_64 -> Simulator |
| std::string GetPlatform(); |
| |
| // Returns true if the application is running on a high-ram device. (>=250M). |
| bool IsRunningOnHighRamDevice(); |
| |
| // Returns true if the device has only one core. |
| bool IsSingleCoreDevice(); |
| |
| // Returns the MAC address of the interface with name |interface_name|. |
| std::string GetMacAddress(const std::string& interface_name); |
| |
| // Returns a random UUID. |
| std::string GetRandomId(); |
| |
| // Returns an identifier for the device, using the given |salt|. A global |
| // identifier is generated the first time this method is called, and the salt |
| // is used to be able to generate distinct identifiers for the same device. If |
| // |salt| is NULL, a default value is used. Unless you are using this value for |
| // something that should be anonymous, you should probably pass NULL. |
| std::string GetDeviceIdentifier(const char* salt); |
| |
| } // namespace device_util |
| } // namespace ios |
| |
| #endif // BASE_IOS_DEVICE_UTIL_H_ |