Does AirBuddy work on Apple Silicon?

โœ… Yes, Native Apple Silicon Support reported as of v2.5.1

May also be known as AirBuddy or Codes Rambo AirBuddy

๐Ÿ“š Bundle Version History

codes.rambo.AirBuddy

v2.30
โœ… Yes, Native Apple Silicon Support
๐Ÿ–ฅ Supported Architectures X86, ARM
Full Info Plist
{
  "BuildMachineOSBuild": "20D64",
  "CFBundleDevelopmentRegion": "en",
  "CFBundleDisplayName": "AirBuddy",
  "CFBundleExecutable": "AirBuddy",
  "CFBundleIconFile": "AppIcon",
  "CFBundleIconName": "AppIcon",
  "CFBundleIdentifier": "codes.rambo.AirBuddy",
  "CFBundleInfoDictionaryVersion": "6.0",
  "CFBundleName": "AirBuddy",
  "CFBundlePackageType": "APPL",
  "CFBundleShortVersionString": "2.3",
  "CFBundleSupportedPlatforms": [
    "MacOSX"
  ],
  "CFBundleURLTypes": [
    {
      "CFBundleTypeRole": "Editor",
      "CFBundleURLName": "codes.rambo.AirBuddy.URL",
      "CFBundleURLSchemes": [
        "airbuddy"
      ]
    }
  ],
  "CFBundleVersion": "275",
  "DTCompiler": "com.apple.compilers.llvm.clang.1_0",
  "DTPlatformBuild": "12E5234g",
  "DTPlatformName": "macosx",
  "DTPlatformVersion": "11.3",
  "DTSDKBuild": "20E5186d",
  "DTSDKName": "macosx11.3",
  "DTXcode": "1250",
  "DTXcodeBuild": "12E5234g",
  "LSApplicationCategoryType": "public.app-category.utilities",
  "LSMinimumSystemVersion": "10.14",
  "LSMultipleInstancesProhibited": true,
  "NSAppTransportSecurity": {
    "NSAllowsArbitraryLoads": true
  },
  "NSBluetoothAlwaysUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBluetoothPeripheralUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBonjourServices": [
    "_AirBuddy._tcp",
    "_AirBuddy._udp",
    "_AirBuddyP._tcp",
    "_AirBuddyP._udp"
  ],
  "NSHumanReadableCopyright": "Copyright ยฉ 2020 Guilherme Rambo. All rights reserved.",
  "NSLocalNetworkUsageDescription": "AirBuddy can use your local network to shared battery status between your Macs.",
  "NSMainStoryboardFile": "Main",
  "NSPrincipalClass": "AirBuddy.ABPreferencesApplication",
  "NSUserActivityTypes": [
    "ConfigurationIntent"
  ],
  "SMPrivilegedExecutables": {
    "codes.rambo.AirBuddy.Installer": "anchor apple generic and certificate leaf[subject.OU] = \"8C7439RJLG\""
  },
  "SUEnableAutomaticChecks": true,
  "SUFeedURL": "https://su.airbuddy.app/kCRSAmcjBc/appcast_hyeon.xml",
  "SUPublicEDKey": "dj8ljUPnwoLj/dLs6HyJg5Ayw+t8zWtgjQUfQsH56ww=",
  "SUScheduledCheckInterval": 86400
}
Full Meta Details
{
  "fileSize": 1.208740234375,
  "architectures": [
    {
      "bits": "32-bit",
      "fileType": "Fixed Virtual Memory Shared Library File",
      "header": {
        "magic": 3405691582,
        "cputype": 0,
        "cpusubtype": 16,
        "filetype": 3,
        "ncmds": 2048,
        "sizeofcmds": 613616,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the output of an incremental link against a base file and can not be link edited again.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "The object file's undefined references are bound by the dynamic linker when loaded."
        ]
      },
      "loadCommandsInfo": [
        {
          "description": 3405691582,
          "size": 2,
          "offset": " 0x0"
        },
        {
          "description": 4103,
          "size": 3,
          "offset": " 0x8"
        },
        {
          "description": 2048,
          "size": 613616,
          "offset": " 0x10"
        },
        {
          "description": "Dynamic Linker Identifier",
          "size": 4108,
          "offset": " 0x18"
        },
        {
          "description": 0,
          "size": 2560,
          "offset": " 0x20"
        },
        {
          "description": 38256,
          "size": 14,
          "offset": " 0x28"
        }
      ],
      "magic": "cafebabe",
      "offset": "0",
      "processorSubType": "v7em",
      "processorType": 0
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 7,
        "cpusubtype": 3,
        "filetype": 2,
        "ncmds": 67,
        "sizeofcmds": 7624,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 4277009103,
          "size": 3,
          "offset": " 0x8000"
        },
        {
          "description": "Symbol segment command",
          "size": 67,
          "offset": " 0x8008"
        },
        {
          "description": 67,
          "size": 131205,
          "offset": " 0x8010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x8018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x8020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x8028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x8060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x8068"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0x8080"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0x8090"
        },
        {
          "description": 1536,
          "size": 5,
          "offset": " 0x8098"
        },
        {
          "description": "UNIX Thread command",
          "size": 20,
          "offset": " 0x80a0"
        },
        {
          "description": "Sub Client Load Command",
          "size": 1702125407,
          "offset": " 0x80a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x80b8"
        },
        {
          "description": 0,
          "size": 11152,
          "offset": " 0x80c8"
        },
        {
          "description": 11152,
          "size": 290960,
          "offset": " 0x80d0"
        },
        {
          "description": 290960,
          "size": 11152,
          "offset": " 0x80d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x80e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x80f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x8108"
        }
      ],
      "magic": "cffaedfe",
      "offset": "8000",
      "processorSubType": 3,
      "processorType": "X86"
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 12,
        "cpusubtype": 0,
        "filetype": 2,
        "ncmds": 68,
        "sizeofcmds": 7632,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 0,
          "size": 68,
          "offset": " 0xa0008"
        },
        {
          "description": 68,
          "size": 131205,
          "offset": " 0xa0010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0xa0018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0xa0020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0xa0028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0xa0060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0xa0068"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0xa0080"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0xa0090"
        },
        {
          "description": 1536,
          "size": 5,
          "offset": " 0xa0098"
        },
        {
          "description": "UNIX Thread command",
          "size": 21,
          "offset": " 0xa00a0"
        },
        {
          "description": "Sub Library Load Command",
          "size": 1702125407,
          "offset": " 0xa00a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa00b8"
        },
        {
          "description": 0,
          "size": 880,
          "offset": " 0xa00c8"
        },
        {
          "description": 880,
          "size": 278960,
          "offset": " 0xa00d0"
        },
        {
          "description": 278960,
          "size": 880,
          "offset": " 0xa00d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0xa00e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0xa00f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa0108"
        }
      ],
      "magic": "cffaedfe",
      "offset": "a0000",
      "processorSubType": "all",
      "processorType": "ARM"
    }
  ]
}
v2.5.3
โœ… Yes, Native Apple Silicon Support
๐Ÿ–ฅ Supported Architectures X86, ARM
Full Info Plist
{
  "BuildMachineOSBuild": "21D62",
  "CFBundleDevelopmentRegion": "en",
  "CFBundleDisplayName": "AirBuddy",
  "CFBundleExecutable": "AirBuddy",
  "CFBundleIconFile": "AppIcon",
  "CFBundleIconName": "AppIcon",
  "CFBundleIdentifier": "codes.rambo.AirBuddy",
  "CFBundleInfoDictionaryVersion": "6.0",
  "CFBundleName": "AirBuddy",
  "CFBundlePackageType": "APPL",
  "CFBundleShortVersionString": "2.5.3",
  "CFBundleSupportedPlatforms": [
    "MacOSX"
  ],
  "CFBundleURLTypes": [
    {
      "CFBundleTypeRole": "Editor",
      "CFBundleURLName": "codes.rambo.AirBuddy.URL",
      "CFBundleURLSchemes": [
        "airbuddy"
      ]
    }
  ],
  "CFBundleVersion": "574",
  "DTCompiler": "com.apple.compilers.llvm.clang.1_0",
  "DTPlatformBuild": "13C100",
  "DTPlatformName": "macosx",
  "DTPlatformVersion": "12.1",
  "DTSDKBuild": "21C46",
  "DTSDKName": "macosx12.1",
  "DTXcode": "1321",
  "DTXcodeBuild": "13C100",
  "LSApplicationCategoryType": "public.app-category.utilities",
  "LSMinimumSystemVersion": "10.14",
  "LSMultipleInstancesProhibited": true,
  "NSAppTransportSecurity": {
    "NSAllowsArbitraryLoads": true
  },
  "NSBluetoothAlwaysUsageDescription": "AirBuddy uses Bluetooth to communicate with nearby AirPods and other Bluetooth devices.",
  "NSBluetoothPeripheralUsageDescription": "AirBuddy uses Bluetooth to communicate with nearby AirPods and other Bluetooth devices.",
  "NSBonjourServices": [
    "_abmMHp._tcp",
    "_abmMHp._udp"
  ],
  "NSHumanReadableCopyright": "Copyright ยฉ 2019 - 2022 Buddy Software LTD. All rights reserved.",
  "NSLocalNetworkUsageDescription": "AirBuddy uses your local network in order to exchange information between multiple devices that are running the app.",
  "NSMainStoryboardFile": "Main",
  "NSPrincipalClass": "AirBuddy.ABPreferencesApplication",
  "NSUserActivityTypes": [
    "DevicesWidgetConfigurationIntent"
  ],
  "SMPrivilegedExecutables": {
    "codes.rambo.AirBuddy.Installer": "anchor apple generic and certificate leaf[subject.OU] = \"8C7439RJLG\""
  },
  "SUEnableAutomaticChecks": true,
  "SUFeedURL": "https://su.airbuddy.app/kCRSAmcjBc/appcast_hyeon.xml",
  "SUPublicEDKey": "dj8ljUPnwoLj/dLs6HyJg5Ayw+t8zWtgjQUfQsH56ww=",
  "SUScheduledCheckInterval": 86400,
  "UNUserNotificationCenter": {
    "UNDaemonShouldReceiveBackgroundResponses": true,
    "UNDefaultCategories": [],
    "UNDefaultSettings": {
      "UNSettingAlerts": true,
      "UNSettingAlwaysShowPreviews": true,
      "UNSettingLockScreen": true,
      "UNSettingModalAlertStyle": 1,
      "UNSettingNotificationCenter": true,
      "UNSettingSounds": false
    }
  }
}
Full Meta Details
{
  "fileSize": 2.1854248046875,
  "architectures": [
    {
      "bits": "32-bit",
      "fileType": "Fixed Virtual Memory Shared Library File",
      "header": {
        "magic": 3405691582,
        "cputype": 0,
        "cpusubtype": 16,
        "filetype": 3,
        "ncmds": 1024,
        "sizeofcmds": 1078768,
        "flags": [
          "The object file is the output of an incremental link against a base file and can not be link edited again.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "The object file's undefined references are bound by the dynamic linker when loaded."
        ]
      },
      "loadCommandsInfo": [
        {
          "description": 3405691582,
          "size": 2,
          "offset": " 0x0"
        },
        {
          "description": 4103,
          "size": 3,
          "offset": " 0x8"
        },
        {
          "description": 1024,
          "size": 1078768,
          "offset": " 0x10"
        },
        {
          "description": "Dynamic Linker Load Command",
          "size": 4108,
          "offset": " 0x18"
        },
        {
          "description": 0,
          "size": 68608,
          "offset": " 0x20"
        },
        {
          "description": 1193856,
          "size": 14,
          "offset": " 0x28"
        }
      ],
      "magic": "cafebabe",
      "offset": "0",
      "processorSubType": "v7em",
      "processorType": 0
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 7,
        "cpusubtype": 3,
        "filetype": 2,
        "ncmds": 74,
        "sizeofcmds": 8312,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 4277009103,
          "size": 3,
          "offset": " 0x4000"
        },
        {
          "description": "Symbol segment command",
          "size": 74,
          "offset": " 0x4008"
        },
        {
          "description": 74,
          "size": 131205,
          "offset": " 0x4010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x4018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x4020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x4028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x4060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x4068"
        },
        {
          "description": 0,
          "size": 2816,
          "offset": " 0x4080"
        },
        {
          "description": 0,
          "size": 2816,
          "offset": " 0x4090"
        },
        {
          "description": 2816,
          "size": 5,
          "offset": " 0x4098"
        },
        {
          "description": "UNIX Thread command",
          "size": 20,
          "offset": " 0x40a0"
        },
        {
          "description": "Sub Client Load Command",
          "size": 1702125407,
          "offset": " 0x40a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x40b8"
        },
        {
          "description": 0,
          "size": 10784,
          "offset": " 0x40c8"
        },
        {
          "description": 10784,
          "size": 556896,
          "offset": " 0x40d0"
        },
        {
          "description": 556896,
          "size": 10784,
          "offset": " 0x40d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x40e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x40f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x4108"
        },
        {
          "description": 0,
          "size": 567680,
          "offset": " 0x4118"
        },
        {
          "description": 567680,
          "size": 5280,
          "offset": " 0x4120"
        }
      ],
      "magic": "cffaedfe",
      "offset": "4000",
      "processorSubType": 3,
      "processorType": "X86"
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 12,
        "cpusubtype": 0,
        "filetype": 2,
        "ncmds": 76,
        "sizeofcmds": 8560,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 0,
          "size": 76,
          "offset": " 0x10c008"
        },
        {
          "description": 76,
          "size": 131205,
          "offset": " 0x10c010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x10c018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x10c020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x10c028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x10c060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x10c068"
        },
        {
          "description": 0,
          "size": 50176,
          "offset": " 0x10c080"
        },
        {
          "description": 0,
          "size": 50176,
          "offset": " 0x10c090"
        },
        {
          "description": 50176,
          "size": 5,
          "offset": " 0x10c098"
        },
        {
          "description": "UNIX Thread command",
          "size": 22,
          "offset": " 0x10c0a0"
        },
        {
          "description": "TwoLevel Hints Load Command",
          "size": 1702125407,
          "offset": " 0x10c0a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x10c0b8"
        },
        {
          "description": 0,
          "size": 16164,
          "offset": " 0x10c0c8"
        },
        {
          "description": 16164,
          "size": 40508,
          "offset": " 0x10c0d0"
        },
        {
          "description": 40508,
          "size": 16164,
          "offset": " 0x10c0d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x10c0e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x10c0f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x10c108"
        },
        {
          "description": 0,
          "size": 609632,
          "offset": " 0x10c118"
        },
        {
          "description": 609632,
          "size": 11904,
          "offset": " 0x10c120"
        },
        {
          "description": 11904,
          "size": 609632,
          "offset": " 0x10c128"
        }
      ],
      "magic": "cffaedfe",
      "offset": "10c000",
      "processorSubType": "all",
      "processorType": "ARM"
    }
  ]
}
v2.5.1
โœ… Yes, Native Apple Silicon Support
๐Ÿ–ฅ Supported Architectures X86, ARM
Full Info Plist
{
  "BuildMachineOSBuild": "21C52",
  "CFBundleDevelopmentRegion": "en",
  "CFBundleDisplayName": "AirBuddy",
  "CFBundleExecutable": "AirBuddy",
  "CFBundleIconFile": "AppIcon",
  "CFBundleIconName": "AppIcon",
  "CFBundleIdentifier": "codes.rambo.AirBuddy",
  "CFBundleInfoDictionaryVersion": "6.0",
  "CFBundleName": "AirBuddy",
  "CFBundlePackageType": "APPL",
  "CFBundleShortVersionString": "2.5.1",
  "CFBundleSupportedPlatforms": [
    "MacOSX"
  ],
  "CFBundleURLTypes": [
    {
      "CFBundleTypeRole": "Editor",
      "CFBundleURLName": "codes.rambo.AirBuddy.URL",
      "CFBundleURLSchemes": [
        "airbuddy"
      ]
    }
  ],
  "CFBundleVersion": "570",
  "DTCompiler": "com.apple.compilers.llvm.clang.1_0",
  "DTPlatformBuild": "13C100",
  "DTPlatformName": "macosx",
  "DTPlatformVersion": "12.1",
  "DTSDKBuild": "21C46",
  "DTSDKName": "macosx12.1",
  "DTXcode": "1321",
  "DTXcodeBuild": "13C100",
  "LSApplicationCategoryType": "public.app-category.utilities",
  "LSMinimumSystemVersion": "10.14",
  "LSMultipleInstancesProhibited": true,
  "NSAppTransportSecurity": {
    "NSAllowsArbitraryLoads": true
  },
  "NSBluetoothAlwaysUsageDescription": "AirBuddy uses Bluetooth to communicate with nearby AirPods and other Bluetooth devices.",
  "NSBluetoothPeripheralUsageDescription": "AirBuddy uses Bluetooth to communicate with nearby AirPods and other Bluetooth devices.",
  "NSBonjourServices": [
    "_abmMHp._tcp",
    "_abmMHp._udp"
  ],
  "NSHumanReadableCopyright": "Copyright ยฉ 2019 - 2022 Buddy Software LTD. All rights reserved.",
  "NSLocalNetworkUsageDescription": "AirBuddy uses your local network in order to exchange information between multiple devices that are running the app.",
  "NSMainStoryboardFile": "Main",
  "NSPrincipalClass": "AirBuddy.ABPreferencesApplication",
  "NSUserActivityTypes": [
    "DevicesWidgetConfigurationIntent"
  ],
  "SMPrivilegedExecutables": {
    "codes.rambo.AirBuddy.Installer": "anchor apple generic and certificate leaf[subject.OU] = \"8C7439RJLG\""
  },
  "SUEnableAutomaticChecks": true,
  "SUFeedURL": "https://su.airbuddy.app/kCRSAmcjBc/appcast_hyeon.xml",
  "SUPublicEDKey": "dj8ljUPnwoLj/dLs6HyJg5Ayw+t8zWtgjQUfQsH56ww=",
  "SUScheduledCheckInterval": 86400,
  "UNUserNotificationCenter": {
    "UNDaemonShouldReceiveBackgroundResponses": true,
    "UNDefaultCategories": [],
    "UNDefaultSettings": {
      "UNSettingAlerts": true,
      "UNSettingAlwaysShowPreviews": true,
      "UNSettingLockScreen": true,
      "UNSettingModalAlertStyle": 1,
      "UNSettingNotificationCenter": true,
      "UNSettingSounds": false
    }
  }
}
Full Meta Details
{
  "fileSize": 2.1854248046875,
  "architectures": [
    {
      "bits": "32-bit",
      "fileType": "Fixed Virtual Memory Shared Library File",
      "header": {
        "magic": 3405691582,
        "cputype": 0,
        "cpusubtype": 16,
        "filetype": 3,
        "ncmds": 1024,
        "sizeofcmds": 1078768,
        "flags": [
          "The object file is the output of an incremental link against a base file and can not be link edited again.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "The object file's undefined references are bound by the dynamic linker when loaded."
        ]
      },
      "loadCommandsInfo": [
        {
          "description": 3405691582,
          "size": 2,
          "offset": " 0x0"
        },
        {
          "description": 4103,
          "size": 3,
          "offset": " 0x8"
        },
        {
          "description": 1024,
          "size": 1078768,
          "offset": " 0x10"
        },
        {
          "description": "Dynamic Linker Load Command",
          "size": 4108,
          "offset": " 0x18"
        },
        {
          "description": 0,
          "size": 68608,
          "offset": " 0x20"
        },
        {
          "description": 1193856,
          "size": 14,
          "offset": " 0x28"
        }
      ],
      "magic": "cafebabe",
      "offset": "0",
      "processorSubType": "v7em",
      "processorType": 0
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 7,
        "cpusubtype": 3,
        "filetype": 2,
        "ncmds": 74,
        "sizeofcmds": 8312,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 4277009103,
          "size": 3,
          "offset": " 0x4000"
        },
        {
          "description": "Symbol segment command",
          "size": 74,
          "offset": " 0x4008"
        },
        {
          "description": 74,
          "size": 131205,
          "offset": " 0x4010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x4018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x4020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x4028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x4060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x4068"
        },
        {
          "description": 0,
          "size": 2816,
          "offset": " 0x4080"
        },
        {
          "description": 0,
          "size": 2816,
          "offset": " 0x4090"
        },
        {
          "description": 2816,
          "size": 5,
          "offset": " 0x4098"
        },
        {
          "description": "UNIX Thread command",
          "size": 20,
          "offset": " 0x40a0"
        },
        {
          "description": "Sub Client Load Command",
          "size": 1702125407,
          "offset": " 0x40a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x40b8"
        },
        {
          "description": 0,
          "size": 10784,
          "offset": " 0x40c8"
        },
        {
          "description": 10784,
          "size": 556896,
          "offset": " 0x40d0"
        },
        {
          "description": 556896,
          "size": 10784,
          "offset": " 0x40d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x40e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x40f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x4108"
        },
        {
          "description": 0,
          "size": 567680,
          "offset": " 0x4118"
        },
        {
          "description": 567680,
          "size": 5280,
          "offset": " 0x4120"
        }
      ],
      "magic": "cffaedfe",
      "offset": "4000",
      "processorSubType": 3,
      "processorType": "X86"
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 12,
        "cpusubtype": 0,
        "filetype": 2,
        "ncmds": 76,
        "sizeofcmds": 8560,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 0,
          "size": 76,
          "offset": " 0x10c008"
        },
        {
          "description": 76,
          "size": 131205,
          "offset": " 0x10c010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x10c018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x10c020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x10c028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x10c060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x10c068"
        },
        {
          "description": 0,
          "size": 50176,
          "offset": " 0x10c080"
        },
        {
          "description": 0,
          "size": 50176,
          "offset": " 0x10c090"
        },
        {
          "description": 50176,
          "size": 5,
          "offset": " 0x10c098"
        },
        {
          "description": "UNIX Thread command",
          "size": 22,
          "offset": " 0x10c0a0"
        },
        {
          "description": "TwoLevel Hints Load Command",
          "size": 1702125407,
          "offset": " 0x10c0a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x10c0b8"
        },
        {
          "description": 0,
          "size": 16164,
          "offset": " 0x10c0c8"
        },
        {
          "description": 16164,
          "size": 40508,
          "offset": " 0x10c0d0"
        },
        {
          "description": 40508,
          "size": 16164,
          "offset": " 0x10c0d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x10c0e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x10c0f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x10c108"
        },
        {
          "description": 0,
          "size": 609632,
          "offset": " 0x10c118"
        },
        {
          "description": 609632,
          "size": 11904,
          "offset": " 0x10c120"
        },
        {
          "description": 11904,
          "size": 609632,
          "offset": " 0x10c128"
        }
      ],
      "magic": "cffaedfe",
      "offset": "10c000",
      "processorSubType": "all",
      "processorType": "ARM"
    }
  ]
}
v2.4.5
โœ… Yes, Native Apple Silicon Support
๐Ÿ–ฅ Supported Architectures X86, ARM
Full Info Plist
{
  "BuildMachineOSBuild": "20G165",
  "CFBundleDevelopmentRegion": "en",
  "CFBundleDisplayName": "AirBuddy",
  "CFBundleExecutable": "AirBuddy",
  "CFBundleIconFile": "AppIcon",
  "CFBundleIconName": "AppIcon",
  "CFBundleIdentifier": "codes.rambo.AirBuddy",
  "CFBundleInfoDictionaryVersion": "6.0",
  "CFBundleName": "AirBuddy",
  "CFBundlePackageType": "APPL",
  "CFBundleShortVersionString": "2.4.5",
  "CFBundleSupportedPlatforms": [
    "MacOSX"
  ],
  "CFBundleURLTypes": [
    {
      "CFBundleTypeRole": "Editor",
      "CFBundleURLName": "codes.rambo.AirBuddy.URL",
      "CFBundleURLSchemes": [
        "airbuddy"
      ]
    }
  ],
  "CFBundleVersion": "344",
  "DTCompiler": "com.apple.compilers.llvm.clang.1_0",
  "DTPlatformBuild": "13A1030d",
  "DTPlatformName": "macosx",
  "DTPlatformVersion": "12.0",
  "DTSDKBuild": "21A344",
  "DTSDKName": "macosx12.0",
  "DTXcode": "1310",
  "DTXcodeBuild": "13A1030d",
  "LSApplicationCategoryType": "public.app-category.utilities",
  "LSMinimumSystemVersion": "10.14",
  "LSMultipleInstancesProhibited": true,
  "NSAppTransportSecurity": {
    "NSAllowsArbitraryLoads": true
  },
  "NSBluetoothAlwaysUsageDescription": "AirBuddy needs access to Bluetooth in order to find your nearby devices.",
  "NSBluetoothPeripheralUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBonjourServices": [
    "_AirBuddy._tcp",
    "_AirBuddy._udp",
    "_AirBuddyP._tcp",
    "_AirBuddyP._udp"
  ],
  "NSHumanReadableCopyright": "Copyright ยฉ 2020 Guilherme Rambo. All rights reserved.",
  "NSLocalNetworkUsageDescription": "AirBuddy can use your local network to shared battery status between your Macs.",
  "NSMainStoryboardFile": "Main",
  "NSPrincipalClass": "AirBuddy.ABPreferencesApplication",
  "NSUserActivityTypes": [
    "ConfigurationIntent"
  ],
  "SMPrivilegedExecutables": {
    "codes.rambo.AirBuddy.Installer": "anchor apple generic and certificate leaf[subject.OU] = \"8C7439RJLG\""
  },
  "SUEnableAutomaticChecks": true,
  "SUFeedURL": "https://su.airbuddy.app/kCRSAmcjBc/appcast_hyeon.xml",
  "SUPublicEDKey": "dj8ljUPnwoLj/dLs6HyJg5Ayw+t8zWtgjQUfQsH56ww=",
  "SUScheduledCheckInterval": 86400,
  "UNUserNotificationCenter": {
    "UNDaemonShouldReceiveBackgroundResponses": true,
    "UNDefaultCategories": [],
    "UNDefaultSettings": {
      "UNSettingAlerts": true,
      "UNSettingAlwaysShowPreviews": true,
      "UNSettingLockScreen": true,
      "UNSettingModalAlertStyle": 1,
      "UNSettingNotificationCenter": true,
      "UNSettingSounds": false
    }
  }
}
Full Meta Details
{
  "fileSize": 1.2795867919921875,
  "architectures": [
    {
      "bits": "32-bit",
      "fileType": "Fixed Virtual Memory Shared Library File",
      "header": {
        "magic": 3405691582,
        "cputype": 0,
        "cpusubtype": 16,
        "filetype": 3,
        "ncmds": 2048,
        "sizeofcmds": 655136,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the output of an incremental link against a base file and can not be link edited again.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "The object file's undefined references are bound by the dynamic linker when loaded."
        ]
      },
      "loadCommandsInfo": [
        {
          "description": 3405691582,
          "size": 2,
          "offset": " 0x0"
        },
        {
          "description": 4103,
          "size": 3,
          "offset": " 0x8"
        },
        {
          "description": 2048,
          "size": 655136,
          "offset": " 0x10"
        },
        {
          "description": "Dynamic Linker Identifier",
          "size": 4108,
          "offset": " 0x18"
        },
        {
          "description": 0,
          "size": 43008,
          "offset": " 0x20"
        },
        {
          "description": 653616,
          "size": 14,
          "offset": " 0x28"
        }
      ],
      "magic": "cafebabe",
      "offset": "0",
      "processorSubType": "v7em",
      "processorType": 0
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 7,
        "cpusubtype": 3,
        "filetype": 2,
        "ncmds": 66,
        "sizeofcmds": 7560,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 4277009103,
          "size": 3,
          "offset": " 0x8000"
        },
        {
          "description": "Symbol segment command",
          "size": 66,
          "offset": " 0x8008"
        },
        {
          "description": 66,
          "size": 131205,
          "offset": " 0x8010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x8018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x8020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x8028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x8060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x8068"
        },
        {
          "description": 0,
          "size": 26624,
          "offset": " 0x8080"
        },
        {
          "description": 0,
          "size": 26624,
          "offset": " 0x8090"
        },
        {
          "description": 26624,
          "size": 5,
          "offset": " 0x8098"
        },
        {
          "description": "UNIX Thread command",
          "size": 20,
          "offset": " 0x80a0"
        },
        {
          "description": "Sub Client Load Command",
          "size": 1702125407,
          "offset": " 0x80a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x80b8"
        },
        {
          "description": 0,
          "size": 20192,
          "offset": " 0x80c8"
        },
        {
          "description": 20192,
          "size": 309792,
          "offset": " 0x80d0"
        },
        {
          "description": 309792,
          "size": 20192,
          "offset": " 0x80d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x80e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x80f8"
        }
      ],
      "magic": "cffaedfe",
      "offset": "8000",
      "processorSubType": 3,
      "processorType": "X86"
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 12,
        "cpusubtype": 0,
        "filetype": 2,
        "ncmds": 67,
        "sizeofcmds": 7568,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 0,
          "size": 67,
          "offset": " 0xa8008"
        },
        {
          "description": 67,
          "size": 131205,
          "offset": " 0xa8010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0xa8018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0xa8020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0xa8028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0xa8060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0xa8068"
        },
        {
          "description": 0,
          "size": 26624,
          "offset": " 0xa8080"
        },
        {
          "description": 0,
          "size": 26624,
          "offset": " 0xa8090"
        },
        {
          "description": 26624,
          "size": 5,
          "offset": " 0xa8098"
        },
        {
          "description": "UNIX Thread command",
          "size": 21,
          "offset": " 0xa80a0"
        },
        {
          "description": "Sub Library Load Command",
          "size": 1702125407,
          "offset": " 0xa80a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa80b8"
        },
        {
          "description": 0,
          "size": 22100,
          "offset": " 0xa80c8"
        },
        {
          "description": 22100,
          "size": 18628,
          "offset": " 0xa80d0"
        },
        {
          "description": 18628,
          "size": 22100,
          "offset": " 0xa80d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0xa80e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0xa80f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa8108"
        }
      ],
      "magic": "cffaedfe",
      "offset": "a8000",
      "processorSubType": "all",
      "processorType": "ARM"
    }
  ]
}
v2.4.2
โœ… Yes, Native Apple Silicon Support
๐Ÿ–ฅ Supported Architectures X86, ARM
Full Info Plist
{
  "BuildMachineOSBuild": "20F71",
  "CFBundleDevelopmentRegion": "en",
  "CFBundleDisplayName": "AirBuddy",
  "CFBundleExecutable": "AirBuddy",
  "CFBundleIconFile": "AppIcon",
  "CFBundleIconName": "AppIcon",
  "CFBundleIdentifier": "codes.rambo.AirBuddy",
  "CFBundleInfoDictionaryVersion": "6.0",
  "CFBundleName": "AirBuddy",
  "CFBundlePackageType": "APPL",
  "CFBundleShortVersionString": "2.4.2",
  "CFBundleSupportedPlatforms": [
    "MacOSX"
  ],
  "CFBundleURLTypes": [
    {
      "CFBundleTypeRole": "Editor",
      "CFBundleURLName": "codes.rambo.AirBuddy.URL",
      "CFBundleURLSchemes": [
        "airbuddy"
      ]
    }
  ],
  "CFBundleVersion": "335",
  "DTCompiler": "com.apple.compilers.llvm.clang.1_0",
  "DTPlatformBuild": "12E262",
  "DTPlatformName": "macosx",
  "DTPlatformVersion": "11.3",
  "DTSDKBuild": "20E214",
  "DTSDKName": "macosx11.3",
  "DTXcode": "1250",
  "DTXcodeBuild": "12E262",
  "LSApplicationCategoryType": "public.app-category.utilities",
  "LSMinimumSystemVersion": "10.14",
  "LSMultipleInstancesProhibited": true,
  "NSAppTransportSecurity": {
    "NSAllowsArbitraryLoads": true
  },
  "NSBluetoothAlwaysUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBluetoothPeripheralUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBonjourServices": [
    "_AirBuddy._tcp",
    "_AirBuddy._udp",
    "_AirBuddyP._tcp",
    "_AirBuddyP._udp"
  ],
  "NSHumanReadableCopyright": "Copyright ยฉ 2020 Guilherme Rambo. All rights reserved.",
  "NSLocalNetworkUsageDescription": "AirBuddy can use your local network to shared battery status between your Macs.",
  "NSMainStoryboardFile": "Main",
  "NSPrincipalClass": "AirBuddy.ABPreferencesApplication",
  "NSUserActivityTypes": [
    "ConfigurationIntent"
  ],
  "SMPrivilegedExecutables": {
    "codes.rambo.AirBuddy.Installer": "anchor apple generic and certificate leaf[subject.OU] = \"8C7439RJLG\""
  },
  "SUEnableAutomaticChecks": true,
  "SUFeedURL": "https://su.airbuddy.app/kCRSAmcjBc/appcast_hyeon.xml",
  "SUPublicEDKey": "dj8ljUPnwoLj/dLs6HyJg5Ayw+t8zWtgjQUfQsH56ww=",
  "SUScheduledCheckInterval": 86400,
  "UNUserNotificationCenter": {
    "UNDaemonShouldReceiveBackgroundResponses": true,
    "UNDefaultCategories": [],
    "UNDefaultSettings": {
      "UNSettingAlerts": true,
      "UNSettingAlwaysShowPreviews": true,
      "UNSettingLockScreen": true,
      "UNSettingModalAlertStyle": 1,
      "UNSettingNotificationCenter": true,
      "UNSettingSounds": false
    }
  }
}
Full Meta Details
{
  "fileSize": 1.23211669921875,
  "architectures": [
    {
      "bits": "32-bit",
      "fileType": "Fixed Virtual Memory Shared Library File",
      "header": {
        "magic": 3405691582,
        "cputype": 0,
        "cpusubtype": 16,
        "filetype": 3,
        "ncmds": 1024,
        "sizeofcmds": 638112,
        "flags": [
          "The object file is the output of an incremental link against a base file and can not be link edited again.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "The object file's undefined references are bound by the dynamic linker when loaded."
        ]
      },
      "loadCommandsInfo": [
        {
          "description": 3405691582,
          "size": 2,
          "offset": " 0x0"
        },
        {
          "description": 4103,
          "size": 3,
          "offset": " 0x8"
        },
        {
          "description": 1024,
          "size": 638112,
          "offset": " 0x10"
        },
        {
          "description": "Dynamic Linker Load Command",
          "size": 4108,
          "offset": " 0x18"
        },
        {
          "description": 0,
          "size": 2560,
          "offset": " 0x20"
        },
        {
          "description": 636608,
          "size": 14,
          "offset": " 0x28"
        }
      ],
      "magic": "cafebabe",
      "offset": "0",
      "processorSubType": "v7em",
      "processorType": 0
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 7,
        "cpusubtype": 3,
        "filetype": 2,
        "ncmds": 66,
        "sizeofcmds": 7560,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 4277009103,
          "size": 3,
          "offset": " 0x4000"
        },
        {
          "description": "Symbol segment command",
          "size": 66,
          "offset": " 0x4008"
        },
        {
          "description": 66,
          "size": 131205,
          "offset": " 0x4010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x4018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x4020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x4028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x4060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x4068"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0x4080"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0x4090"
        },
        {
          "description": 25600,
          "size": 5,
          "offset": " 0x4098"
        },
        {
          "description": "UNIX Thread command",
          "size": 20,
          "offset": " 0x40a0"
        },
        {
          "description": "Sub Client Load Command",
          "size": 1702125407,
          "offset": " 0x40a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x40b8"
        },
        {
          "description": 0,
          "size": 7968,
          "offset": " 0x40c8"
        },
        {
          "description": 7968,
          "size": 306960,
          "offset": " 0x40d0"
        },
        {
          "description": 306960,
          "size": 7968,
          "offset": " 0x40d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x40e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x40f8"
        }
      ],
      "magic": "cffaedfe",
      "offset": "4000",
      "processorSubType": 3,
      "processorType": "X86"
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 12,
        "cpusubtype": 0,
        "filetype": 2,
        "ncmds": 67,
        "sizeofcmds": 7568,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 0,
          "size": 67,
          "offset": " 0xa0008"
        },
        {
          "description": 67,
          "size": 131205,
          "offset": " 0xa0010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0xa0018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0xa0020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0xa0028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0xa0060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0xa0068"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0xa0080"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0xa0090"
        },
        {
          "description": 25600,
          "size": 5,
          "offset": " 0xa0098"
        },
        {
          "description": "UNIX Thread command",
          "size": 21,
          "offset": " 0xa00a0"
        },
        {
          "description": "Sub Library Load Command",
          "size": 1702125407,
          "offset": " 0xa00a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa00b8"
        },
        {
          "description": 0,
          "size": 10324,
          "offset": " 0xa00c8"
        },
        {
          "description": 10324,
          "size": 294908,
          "offset": " 0xa00d0"
        },
        {
          "description": 294908,
          "size": 10324,
          "offset": " 0xa00d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0xa00e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0xa00f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa0108"
        }
      ],
      "magic": "cffaedfe",
      "offset": "a0000",
      "processorSubType": "all",
      "processorType": "ARM"
    }
  ]
}
v2.4.1
โœ… Yes, Native Apple Silicon Support
๐Ÿ–ฅ Supported Architectures X86, ARM
Full Info Plist
{
  "BuildMachineOSBuild": "20F71",
  "CFBundleDevelopmentRegion": "en",
  "CFBundleDisplayName": "AirBuddy",
  "CFBundleExecutable": "AirBuddy",
  "CFBundleIconFile": "AppIcon",
  "CFBundleIconName": "AppIcon",
  "CFBundleIdentifier": "codes.rambo.AirBuddy",
  "CFBundleInfoDictionaryVersion": "6.0",
  "CFBundleName": "AirBuddy",
  "CFBundlePackageType": "APPL",
  "CFBundleShortVersionString": "2.4.1",
  "CFBundleSupportedPlatforms": [
    "MacOSX"
  ],
  "CFBundleURLTypes": [
    {
      "CFBundleTypeRole": "Editor",
      "CFBundleURLName": "codes.rambo.AirBuddy.URL",
      "CFBundleURLSchemes": [
        "airbuddy"
      ]
    }
  ],
  "CFBundleVersion": "333",
  "DTCompiler": "com.apple.compilers.llvm.clang.1_0",
  "DTPlatformBuild": "12E262",
  "DTPlatformName": "macosx",
  "DTPlatformVersion": "11.3",
  "DTSDKBuild": "20E214",
  "DTSDKName": "macosx11.3",
  "DTXcode": "1250",
  "DTXcodeBuild": "12E262",
  "LSApplicationCategoryType": "public.app-category.utilities",
  "LSMinimumSystemVersion": "10.14",
  "LSMultipleInstancesProhibited": true,
  "NSAppTransportSecurity": {
    "NSAllowsArbitraryLoads": true
  },
  "NSBluetoothAlwaysUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBluetoothPeripheralUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBonjourServices": [
    "_AirBuddy._tcp",
    "_AirBuddy._udp",
    "_AirBuddyP._tcp",
    "_AirBuddyP._udp"
  ],
  "NSHumanReadableCopyright": "Copyright ยฉ 2020 Guilherme Rambo. All rights reserved.",
  "NSLocalNetworkUsageDescription": "AirBuddy can use your local network to shared battery status between your Macs.",
  "NSMainStoryboardFile": "Main",
  "NSPrincipalClass": "AirBuddy.ABPreferencesApplication",
  "NSUserActivityTypes": [
    "ConfigurationIntent"
  ],
  "SMPrivilegedExecutables": {
    "codes.rambo.AirBuddy.Installer": "anchor apple generic and certificate leaf[subject.OU] = \"8C7439RJLG\""
  },
  "SUEnableAutomaticChecks": true,
  "SUFeedURL": "https://su.airbuddy.app/kCRSAmcjBc/appcast_hyeon.xml",
  "SUPublicEDKey": "dj8ljUPnwoLj/dLs6HyJg5Ayw+t8zWtgjQUfQsH56ww=",
  "SUScheduledCheckInterval": 86400,
  "UNUserNotificationCenter": {
    "UNDaemonShouldReceiveBackgroundResponses": true,
    "UNDefaultCategories": [],
    "UNDefaultSettings": {
      "UNSettingAlerts": true,
      "UNSettingAlwaysShowPreviews": true,
      "UNSettingLockScreen": true,
      "UNSettingModalAlertStyle": 1,
      "UNSettingNotificationCenter": true,
      "UNSettingSounds": false
    }
  }
}
Full Meta Details
{
  "fileSize": 1.2318115234375,
  "architectures": [
    {
      "bits": "32-bit",
      "fileType": "Fixed Virtual Memory Shared Library File",
      "header": {
        "magic": 3405691582,
        "cputype": 0,
        "cpusubtype": 16,
        "filetype": 3,
        "ncmds": 1024,
        "sizeofcmds": 637792,
        "flags": [
          "The object file is the output of an incremental link against a base file and can not be link edited again.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "The object file's undefined references are bound by the dynamic linker when loaded."
        ]
      },
      "loadCommandsInfo": [
        {
          "description": 3405691582,
          "size": 2,
          "offset": " 0x0"
        },
        {
          "description": 4103,
          "size": 3,
          "offset": " 0x8"
        },
        {
          "description": 1024,
          "size": 637792,
          "offset": " 0x10"
        },
        {
          "description": "Dynamic Linker Load Command",
          "size": 4108,
          "offset": " 0x18"
        },
        {
          "description": 0,
          "size": 2560,
          "offset": " 0x20"
        },
        {
          "description": 636288,
          "size": 14,
          "offset": " 0x28"
        }
      ],
      "magic": "cafebabe",
      "offset": "0",
      "processorSubType": "v7em",
      "processorType": 0
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 7,
        "cpusubtype": 3,
        "filetype": 2,
        "ncmds": 66,
        "sizeofcmds": 7560,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 4277009103,
          "size": 3,
          "offset": " 0x4000"
        },
        {
          "description": "Symbol segment command",
          "size": 66,
          "offset": " 0x4008"
        },
        {
          "description": 66,
          "size": 131205,
          "offset": " 0x4010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x4018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x4020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x4028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x4060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x4068"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0x4080"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0x4090"
        },
        {
          "description": 25600,
          "size": 5,
          "offset": " 0x4098"
        },
        {
          "description": "UNIX Thread command",
          "size": 20,
          "offset": " 0x40a0"
        },
        {
          "description": "Sub Client Load Command",
          "size": 1702125407,
          "offset": " 0x40a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x40b8"
        },
        {
          "description": 0,
          "size": 7920,
          "offset": " 0x40c8"
        },
        {
          "description": 7920,
          "size": 307040,
          "offset": " 0x40d0"
        },
        {
          "description": 307040,
          "size": 7920,
          "offset": " 0x40d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x40e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x40f8"
        }
      ],
      "magic": "cffaedfe",
      "offset": "4000",
      "processorSubType": 3,
      "processorType": "X86"
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 12,
        "cpusubtype": 0,
        "filetype": 2,
        "ncmds": 67,
        "sizeofcmds": 7568,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 0,
          "size": 67,
          "offset": " 0xa0008"
        },
        {
          "description": 67,
          "size": 131205,
          "offset": " 0xa0010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0xa0018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0xa0020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0xa0028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0xa0060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0xa0068"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0xa0080"
        },
        {
          "description": 0,
          "size": 25600,
          "offset": " 0xa0090"
        },
        {
          "description": 25600,
          "size": 5,
          "offset": " 0xa0098"
        },
        {
          "description": "UNIX Thread command",
          "size": 21,
          "offset": " 0xa00a0"
        },
        {
          "description": "Sub Library Load Command",
          "size": 1702125407,
          "offset": " 0xa00a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa00b8"
        },
        {
          "description": 0,
          "size": 10352,
          "offset": " 0xa00c8"
        },
        {
          "description": 10352,
          "size": 18432,
          "offset": " 0xa00d0"
        },
        {
          "description": 18432,
          "size": 10352,
          "offset": " 0xa00d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0xa00e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0xa00f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa0108"
        }
      ],
      "magic": "cffaedfe",
      "offset": "a0000",
      "processorSubType": "all",
      "processorType": "ARM"
    }
  ]
}
v2.3.2
โœ… Yes, Native Apple Silicon Support
๐Ÿ–ฅ Supported Architectures X86, ARM
Full Info Plist
{
  "BuildMachineOSBuild": "20D64",
  "CFBundleDevelopmentRegion": "en",
  "CFBundleDisplayName": "AirBuddy",
  "CFBundleExecutable": "AirBuddy",
  "CFBundleIconFile": "AppIcon",
  "CFBundleIconName": "AppIcon",
  "CFBundleIdentifier": "codes.rambo.AirBuddy",
  "CFBundleInfoDictionaryVersion": "6.0",
  "CFBundleName": "AirBuddy",
  "CFBundlePackageType": "APPL",
  "CFBundleShortVersionString": "2.3.2",
  "CFBundleSupportedPlatforms": [
    "MacOSX"
  ],
  "CFBundleURLTypes": [
    {
      "CFBundleTypeRole": "Editor",
      "CFBundleURLName": "codes.rambo.AirBuddy.URL",
      "CFBundleURLSchemes": [
        "airbuddy"
      ]
    }
  ],
  "CFBundleVersion": "282",
  "DTCompiler": "com.apple.compilers.llvm.clang.1_0",
  "DTPlatformBuild": "12E5244e",
  "DTPlatformName": "macosx",
  "DTPlatformVersion": "11.3",
  "DTSDKBuild": "20E5196d",
  "DTSDKName": "macosx11.3",
  "DTXcode": "1250",
  "DTXcodeBuild": "12E5244e",
  "LSApplicationCategoryType": "public.app-category.utilities",
  "LSMinimumSystemVersion": "10.14",
  "LSMultipleInstancesProhibited": true,
  "NSAppTransportSecurity": {
    "NSAllowsArbitraryLoads": true
  },
  "NSBluetoothAlwaysUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBluetoothPeripheralUsageDescription": "I need access to Bluetooth to be able to detect nearby devices like AirPods.",
  "NSBonjourServices": [
    "_AirBuddy._tcp",
    "_AirBuddy._udp",
    "_AirBuddyP._tcp",
    "_AirBuddyP._udp"
  ],
  "NSHumanReadableCopyright": "Copyright ยฉ 2020 Guilherme Rambo. All rights reserved.",
  "NSLocalNetworkUsageDescription": "AirBuddy can use your local network to shared battery status between your Macs.",
  "NSMainStoryboardFile": "Main",
  "NSPrincipalClass": "AirBuddy.ABPreferencesApplication",
  "NSUserActivityTypes": [
    "ConfigurationIntent"
  ],
  "SMPrivilegedExecutables": {
    "codes.rambo.AirBuddy.Installer": "anchor apple generic and certificate leaf[subject.OU] = \"8C7439RJLG\""
  },
  "SUEnableAutomaticChecks": true,
  "SUFeedURL": "https://su.airbuddy.app/kCRSAmcjBc/appcast_hyeon.xml",
  "SUPublicEDKey": "dj8ljUPnwoLj/dLs6HyJg5Ayw+t8zWtgjQUfQsH56ww=",
  "SUScheduledCheckInterval": 86400
}
Full Meta Details
{
  "fileSize": 1.2093048095703125,
  "architectures": [
    {
      "bits": "32-bit",
      "fileType": "Fixed Virtual Memory Shared Library File",
      "header": {
        "magic": 3405691582,
        "cputype": 0,
        "cpusubtype": 16,
        "filetype": 3,
        "ncmds": 2048,
        "sizeofcmds": 614256,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the output of an incremental link against a base file and can not be link edited again.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "The object file's undefined references are bound by the dynamic linker when loaded."
        ]
      },
      "loadCommandsInfo": [
        {
          "description": 3405691582,
          "size": 2,
          "offset": " 0x0"
        },
        {
          "description": 4103,
          "size": 3,
          "offset": " 0x8"
        },
        {
          "description": 2048,
          "size": 614256,
          "offset": " 0x10"
        },
        {
          "description": "Dynamic Linker Identifier",
          "size": 4108,
          "offset": " 0x18"
        },
        {
          "description": 0,
          "size": 2560,
          "offset": " 0x20"
        },
        {
          "description": 612688,
          "size": 14,
          "offset": " 0x28"
        }
      ],
      "magic": "cafebabe",
      "offset": "0",
      "processorSubType": "v7em",
      "processorType": 0
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 7,
        "cpusubtype": 3,
        "filetype": 2,
        "ncmds": 67,
        "sizeofcmds": 7624,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 4277009103,
          "size": 3,
          "offset": " 0x8000"
        },
        {
          "description": "Symbol segment command",
          "size": 67,
          "offset": " 0x8008"
        },
        {
          "description": 67,
          "size": 131205,
          "offset": " 0x8010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0x8018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0x8020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0x8028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0x8060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0x8068"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0x8080"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0x8090"
        },
        {
          "description": 1536,
          "size": 5,
          "offset": " 0x8098"
        },
        {
          "description": "UNIX Thread command",
          "size": 20,
          "offset": " 0x80a0"
        },
        {
          "description": "Sub Client Load Command",
          "size": 1702125407,
          "offset": " 0x80a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x80b8"
        },
        {
          "description": 0,
          "size": 10176,
          "offset": " 0x80c8"
        },
        {
          "description": 10176,
          "size": 18224,
          "offset": " 0x80d0"
        },
        {
          "description": 18224,
          "size": 10176,
          "offset": " 0x80d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0x80e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0x80f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0x8108"
        }
      ],
      "magic": "cffaedfe",
      "offset": "8000",
      "processorSubType": 3,
      "processorType": "X86"
    },
    {
      "bits": "64-bit",
      "fileType": "Demand Paged Executable File",
      "header": {
        "magic": 3489328638,
        "cputype": 12,
        "cpusubtype": 0,
        "filetype": 2,
        "ncmds": 68,
        "sizeofcmds": 7632,
        "flags": [
          "The object file has no undefined references and is executable.",
          "The object file is the input for the dynamic linker and can not be staticly link edited again.",
          "undefined"
        ],
        "reserved": 0
      },
      "loadCommandsInfo": [
        {
          "description": 0,
          "size": 68,
          "offset": " 0xa0008"
        },
        {
          "description": 68,
          "size": 131205,
          "offset": " 0xa0010"
        },
        {
          "description": 131205,
          "size": 25,
          "offset": " 0xa0018"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1095786335,
          "offset": " 0xa0020"
        },
        {
          "description": 1095786335,
          "size": 20306,
          "offset": " 0xa0028"
        },
        {
          "description": 0,
          "size": 25,
          "offset": " 0xa0060"
        },
        {
          "description": "64-bits Segment Load Command",
          "size": 1163157343,
          "offset": " 0xa0068"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0xa0080"
        },
        {
          "description": 0,
          "size": 1536,
          "offset": " 0xa0090"
        },
        {
          "description": 1536,
          "size": 5,
          "offset": " 0xa0098"
        },
        {
          "description": "UNIX Thread command",
          "size": 21,
          "offset": " 0xa00a0"
        },
        {
          "description": "Sub Library Load Command",
          "size": 1702125407,
          "offset": " 0xa00a8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa00b8"
        },
        {
          "description": 0,
          "size": 816,
          "offset": " 0xa00c8"
        },
        {
          "description": 816,
          "size": 17472,
          "offset": " 0xa00d0"
        },
        {
          "description": 17472,
          "size": 816,
          "offset": " 0xa00d8"
        },
        {
          "description": 0,
          "size": 524352,
          "offset": " 0xa00e8"
        },
        {
          "description": 0,
          "size": 1953718111,
          "offset": " 0xa00f8"
        },
        {
          "description": 0,
          "size": 1163157343,
          "offset": " 0xa0108"
        }
      ],
      "magic": "cffaedfe",
      "offset": "a0000",
      "processorSubType": "all",
      "processorType": "ARM"
    }
  ]
}
Report Update