Skip to content

Commit

Permalink
Add format useragent
Browse files Browse the repository at this point in the history
  • Loading branch information
BRUHItsABunny committed Feb 18, 2021
1 parent 3cc3804 commit 9fe8b1f
Showing 1 changed file with 24 additions and 1 deletion.
25 changes: 24 additions & 1 deletion device.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package go_android_utils

import "strings"
import (
"strconv"
"strings"
)

type Device struct {
AndroidId AndroidID
Expand Down Expand Up @@ -103,6 +106,26 @@ func (device Device) GetUserAgent() string {
return "(Linux; Android " + device.AndroidVersion.ToAndroidVersion() + "; " + strings.ToLower(device.Locale.ToLocale("-")) + "; " + device.Model + " Build/" + device.Build + ")"
}

const (
DeviceFormatKeyAndroidVersion = ":andVers"
DeviceFormatKeyAndroidSDKLevel = ":andSDK"
DeviceFormatKeyLocale = ":locale"
DeviceFormatKeyModel = ":model"
DeviceFormatKeyBuild = ":build"
DeviceFormatKeyDPI = ":dpi"
)

func (device Device) FormatUserAgent(format string) string {
// TODO: Cache this? replace is inefficient everytime?
format = strings.ReplaceAll(format, DeviceFormatKeyAndroidVersion, device.AndroidVersion.ToAndroidVersion())
format = strings.ReplaceAll(format, DeviceFormatKeyAndroidSDKLevel, device.AndroidVersion.ToAndroidSDK())
format = strings.ReplaceAll(format, DeviceFormatKeyLocale, strings.ToLower(device.Locale.ToLocale("-")))
format = strings.ReplaceAll(format, DeviceFormatKeyModel, device.Model)
format = strings.ReplaceAll(format, DeviceFormatKeyBuild, device.Build)
format = strings.ReplaceAll(format, DeviceFormatKeyDPI, strconv.Itoa(device.DPI))
return format
}

func (device Device) GetFingerprint() string {
return "dev=" + device.Device + ", man=" + device.Manufacturer + ", mod=\"" + device.Model + "\", pro=" + device.Product + ", fin=\"" + device.Manufacturer + "/" + device.Product + "/" + device.Device + ":" + device.AndroidVersion.ToAndroidVersion() + "/" + device.Build + "/" + device.IncrementalVersion + ":" + device.Type + "/" + device.Tags + "\", sdk=" + device.AndroidVersion.ToAndroidSDK()
}

0 comments on commit 9fe8b1f

Please sign in to comment.