Files
fastfetch/src/detection/host/host_android.c
T

39 lines
1.5 KiB
C
Raw Normal View History

2022-09-04 12:43:30 +02:00
#include "host.h"
2022-09-04 13:33:18 +02:00
#include "common/settings.h"
2022-09-04 12:43:30 +02:00
#include <ctype.h>
const char* ffDetectHost(FFHostResult* host)
2022-09-04 12:43:30 +02:00
{
2023-07-27 19:23:27 +08:00
// http://newandroidbook.com/ddb/
2024-01-05 20:38:29 +08:00
ffSettingsGetAndroidProperty("ro.product.device", &host->family);
2022-09-04 12:43:30 +02:00
2024-01-05 20:38:29 +08:00
ffSettingsGetAndroidProperty("ro.product.marketname", &host->name)
|| ffSettingsGetAndroidProperty("ro.vendor.product.display", &host->name)
|| ffSettingsGetAndroidProperty("ro.vivo.market.name", &host->name)
|| ffSettingsGetAndroidProperty("ro.product.oppo_model", &host->name)
|| ffSettingsGetAndroidProperty("ro.oppo.market.name", &host->name)
2024-01-05 20:38:29 +08:00
|| ffSettingsGetAndroidProperty("ro.config.devicename", &host->name)
|| ffSettingsGetAndroidProperty("ro.config.marketing_name", &host->name)
|| ffSettingsGetAndroidProperty("ro.product.vendor.model", &host->name)
|| ffSettingsGetAndroidProperty("ro.product.brand", &host->name);
2023-07-27 19:23:27 +08:00
2024-01-05 20:38:29 +08:00
if (ffSettingsGetAndroidProperty("ro.product.model", &host->version))
2023-06-12 22:53:12 +08:00
{
2024-01-05 20:38:29 +08:00
if (ffStrbufStartsWithIgnCase(&host->version, &host->name))
2023-07-27 19:23:27 +08:00
{
2024-01-05 20:38:29 +08:00
ffStrbufSubstrAfter(&host->version, host->name.length);
ffStrbufTrimLeft(&host->version, ' ');
2023-07-27 19:23:27 +08:00
}
2022-09-04 12:43:30 +02:00
}
2024-01-05 20:38:29 +08:00
ffSettingsGetAndroidProperty("ro.product.manufacturer", &host->vendor);
2022-09-04 12:43:30 +02:00
2024-01-05 20:38:29 +08:00
if(host->vendor.length && !ffStrbufStartsWithIgnCase(&host->name, &host->vendor))
2023-07-27 19:23:27 +08:00
{
2024-01-05 20:38:29 +08:00
ffStrbufPrependS(&host->name, " ");
ffStrbufPrepend(&host->name, &host->vendor);
2023-07-27 19:23:27 +08:00
}
2023-06-12 22:53:12 +08:00
return NULL;
2022-09-04 12:43:30 +02:00
}