#include <fmx.h>
#if defined(TARGET_OS_IPHONE) || defined(TARGET_IPHONE_SIMULATOR)
#include <iOSapi.UIKit.hpp>
#endif
#pragma hdrstop
#include "uMain.h"
#if defined(__ANDROID__)
#include <Androidapi.JNI.Os.hpp>
#include <Androidapi.Helpers.hpp>
#endif
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.fmx"
#pragma resource ("*.LgXhdpiPh.fmx", _PLAT_ANDROID)
//获取设备名称、版本号等。
#if defined(__ANDROID__)
String GetCodename(String VerString)
{
if (VerString == "1.0")
return "BASE";
else if (VerString == "1.1")
return "BASE_1_1";
else if (VerString == "1.5")
return "CUPCAKE";
else if (VerString == "1.6")
return "DONUT";
else if (VerString == "2.0")
return "ECLAIR";
else if (VerString == "2.0.1")
return "ECLAIR_0_1";
else if (VerString == "2.1")
return "ECLAIR_MR1";
else if (VerString == "2.2")
return "FROYO";
else if (VerString == "2.3")
return "GINGERBREAD";
else if (VerString == "2.3.3")
return "GINGERBREAD_MR1";
else if (VerString == "3.0")
return "HONEYCOMB";
else if (VerString == "3.1")
return "HONEYCOMB_MR1";
else if (VerString == "3.2")
return "HONEYCOMB_MR2";
else if (VerString == "4.0")
return "ICE_CREAM_SANDWICH";
else if (VerString == "4.0.3")
return "ICE_CREAM_SANDWICH_MR1";
else if (VerString == "4.1")
return "JELLY_BEAN";
else if (VerString == "4.2")
return "JELLY_BEAN_MR1";
else if (VerString == "4.3")
return "JELLY_BEAN_MR2";
else if (Pos("4.4", VerString) == 1)
return "KITKAT";
else return "UNKNOWN";
};
#endif
//---------------------------------------------------------------------------
//获取手机(Andriod或IOS)的信息:0=设备类型;1=操作系统名称(OS)/手机品牌名称(Andriod)
//2=版本名称。
UnicodeString __fastcall TForm3D1::GetDeviceInfo(int iGetType)
{
#if defined(TARGET_OS_IPHONE) || defined(TARGET_IPHONE_SIMULATOR)
_di_UIDevice device = TUIDevice::Wrap(TUIDevice::OCClass->currentDevice());
if(iGetType==0) return s_result = device->systemName()->UTF8String(); //Device Type
if(iGetType==1) return device->systemVersion()->UTF8String();break;//OS Name.
if(iGetType==2) return device->model()->UTF8String();//OS Version.
#endif
#if defined(__ANDROID__)
if(iGetType==0) return UTF8String(JStringToString(TJBuild::JavaClass->MODEL));
if(iGetType==1) return UTF8String(GetCodename( JStringToString(TJBuild_VERSION::JavaClass->RELEASE)));
if(iGetType==2) return UTF8String(JStringToString(TJBuild_VERSION::JavaClass->RELEASE));
#endif
return L"";
}
//---------------------------------------------------------------------------