unity怎么获取设备的gpu:
链接:https://docs.unity3d.com/cn/current/ScriptReference/SystemInfo.html
官方systemInfo类,可以获取设备的显卡型号,显卡名
获取cpu的话比较坑,我目前只知道一种方法,通过安卓层获取cpu型号,
Android获取系统cpu信息,内存,版本,电量等信息 - 似水流云 - 博客园 我看网上很多人用这种方法获取,但是楼主并没有获取成功,嗨
后面我使用了安卓os中的build库
public class GetEquipmentInfo{
String brand,model,androidversion,romname,romversion,sign,sdk;
String device,product,cpu,board,display,id,version_codes_base,maker,user,tags;
String hardware,host,unknown,type,time,radio,serial,cpu2;
GetEquipmentInfo(){
product = "产品 : " + android.os.Build.PRODUCT;
cpu= " CPU_ABI : " + android.os.Build.CPU_ABI;
tags= " 标签 : " + android.os.Build.TAGS;
version_codes_base= " VERSION_CODES.BASE: " + android.os.Build.VERSION_CODES.BASE;
model= " 型号 : " + android.os.Build.MODEL;
sdk= " SDK : " + android.os.Build.VERSION.SDK;
androidversion= " Android 版本 : " + android.os.Build.VERSION.RELEASE;
device= " 驱动 : " + android.os.Build.DEVICE;
display= " DISPLAY: " + android.os.Build.DISPLAY;
brand= " 品牌 : " + android.os.Build.BRAND;
board= " 基板 : " + android.os.Build.BOARD;
sign= " 设备标识 : " + android.os.Build.FINGERPRINT;
id= " 版本号 : " + android.os.Build.ID;
maker= " 制造商 : " + android.os.Build.MANUFACTURER;
user= " 用户 : " + android.os.Build.USER;
cpu2=" CPU_ABI2 : "+android.os.Build.CPU_ABI2;
hardware=" 硬件 : "+ android.os.Build.HARDWARE;
host=" 主机地址 :"+android.os.Build.HOST;
unknown =" 未知信息 : "+android.os.Build.UNKNOWN;
type=" 版本类型 : "+android.os.Build.TYPE;
time =" 时间 : "+String.valueOf(android.os.Build.TIME);
radio =" Radio : "+android.os.Build.RADIO;
serial=" 序列号 : "+android.os.Build.SERIAL;
发现这个hardware硬件就是cpu的name上图是华为手机的麒麟985芯片
但是这里面也有坑,高通系列的都叫qcom
关于高通骁龙的芯片,还是比较好处理的,虽然他们的cpu都是显示qcom,我们就从gpu层面做适配https://www.techcenturion.com/mobile-gpu-rankings
而联发科更加奇葩,他们同一个gpu架构跨度实在太大了,用一个g78架构可能涵盖了好几代的手机,所以我们还需要知道他的cpu型号,日常生活中,cpu常规的叫法都是什么天玑9000这类的芯片名,可以看下图,我们打印hardware,联发科的叫什么mt6853
经过查阅,,,这玩意儿就是天玑800u和天玑720
,mt6853是他们内部使用的版本代称,List all | Processor Specs | PhoneDB - The Largest Phone Specs Database内部版本号可以从这个网站查询,现在知道了cpu和gpu 的型号你就可以做画质适配了