Inside the IPA

geeni

Merkury Innovations LLCcom.merkuryinnovations.geeni

← App page
Package analysisv4.0.5
Build 20250227162731Record 8732108262025-02-27
Uncompressed filesNot recordedSum of recorded file sizes
Recorded IPA size169.2 MBSelected build · archive size
Files inventoried0No file inventory available
Embedded librariesNot availableFrameworks & dynamic libraries

Package footprint

What takes up space?

Uncompressed

No file inventory yet

A storage breakdown needs a recorded package inventory. Metadata alone cannot show what is inside an IPA.

Bundle structure

Space by folder

Top level

No folders recorded

Folder sizes will appear with the package inventory.

Explore the package

File explorer

Find the heavy files, inspect paths, or filter by what they contain.

No files to explore

File names and sizes have not been recorded for an analyzed package.

Native binary explorer

Every binary. Every architecture.

Inspect signed entitlements and permissions, load commands, memory layout, dependencies, symbols and runtime evidence for each slice.

Native analysis has not been recorded for this build

New package processing stores complete reports for each binary and architecture here. Existing header only records are not presented as full binary analysis.

Under the hood

Frameworks & engines

Embedded code and runtime evidence from this build, not other releases.

0 embedded libraries

No engine identification recorded for this build. That does not mean the app has no game engine or runtime.

Additional scanner detections 18

Recorded signals

Package details

Only the analyzed build

Privacy & permissions

Recorded
Tracking declared
No
Non exempt encryption
Not declared
Permission descriptions
NSBluetoothAlwaysUsageDescription
This will allow you to connect your device more easily.
NSLocationAlwaysUsageDescription
Geeni can provide the temperature and humidity of your location. \"Leave or Arrive (beta)\" always requests access to your location first.
NSCameraUsageDescription
Geeni uses the camera to add a new profile photo, scan QR codes, and other functions.
NSHealthUpdateUsageDescription
Visit \"Health\" and read the data
NSMotionUsageDescription
NSBluetoothPeripheralUsageDescription
You must turn on Bluetooth in order to add and use Bluetooth devices..
NSPhotoLibraryAddUsageDescription
Access to your gallery is required in order to save screenshots and screen recordings.
NSLocalNetworkUsageDescription
The purpose of the app connecting to the local network: enable pairing and control of the devices connected to the local area network
NSHealthShareUsageDescription
Visit \"Health\" and read the data
NSAppleMusicUsageDescription
The app needs to access your media library to get music. If you do not allow access, local music cannot be added.
NSLocationUsageDescription
Location permissions will be used for smart device automation, discovery of nearby devices, Wi-Fi lists, and more. Please grant the permission to the app.
NSMicrophoneUsageDescription
Part of the product’s function is to collect audio through your phone.
NSLocationWhenInUseUsageDescription
Geeni needs access to your location information to better service you accurate information regarding weather and temperature.
NSLocationAlwaysAndWhenInUseUsageDescription
The app can provide temperature and humidity according to your location. \"Leave or Arrive (beta)\" always requests access to your location.
NSHomeKitUsageDescription
You can control all devices that are listed under \"Family\" in the app.
NSPhotoLibraryUsageDescription
Visit the gallery to set up your profile photo.
Tracking domains 0
[]
Accessed API types 4
[
  {
    "NSPrivacyAccessedAPIType": "NSPrivacyAccessedAPICategoryUserDefaults",
    "NSPrivacyAccessedAPITypeReasons": [
      "CA92.1"
    ]
  },
  {
    "NSPrivacyAccessedAPIType": "NSPrivacyAccessedAPICategoryFileTimestamp",
    "NSPrivacyAccessedAPITypeReasons": [
      "DDA9.1"
    ]
  },
  {
    "NSPrivacyAccessedAPIType": "NSPrivacyAccessedAPICategoryDiskSpace",
    "NSPrivacyAccessedAPITypeReasons": [
      "E174.1"
    ]
  },
  {
    "NSPrivacyAccessedAPIType": "NSPrivacyAccessedAPICategorySystemBootTime",
    "NSPrivacyAccessedAPITypeReasons": [
      "35F9.1"
    ]
  }
]
Collected data types 16
[
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeDeviceID",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAnalytics",
      "NSPrivacyCollectedDataTypePurposeProductPersonalization",
      "NSPrivacyCollectedDataTypePurposeDeveloperAdvertising"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeUserID",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeProductPersonalization",
      "NSPrivacyCollectedDataTypePurposeAnalytics",
      "NSPrivacyCollectedDataTypePurposeDeveloperAdvertising"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeProductInteraction",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAnalytics"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeEmailAddress",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAnalytics",
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypePhoneNumber",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAnalytics",
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeFitness",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypePreciseLocation",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeCoarseLocation",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypePhotosorVideos",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeAudioData",
    "NSPrivacyCollectedDataTypeLinked": false,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeCustomerSupport",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeOtherUserContent",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeUserID",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAnalytics",
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypePurchaseHistory",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAppFunctionality"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypeCrashData",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAnalytics"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  },
  {
    "NSPrivacyCollectedDataType": "NSPrivacyCollectedDataTypePerformanceData",
    "NSPrivacyCollectedDataTypeLinked": true,
    "NSPrivacyCollectedDataTypePurposes": [
      "NSPrivacyCollectedDataTypePurposeAnalytics"
    ],
    "NSPrivacyCollectedDataTypeTracking": false
  }
]
Additional Info.plist declarations
App transport security
{
  "NSAllowsArbitraryLoads": false,
  "NSExceptionDomains": {
    "certify.ctwing.cn": {
      "NSExceptionAllowsInsecureHTTPLoads": true,
      "NSExceptionRequiresForwardSecrecy": false,
      "NSIncludesSubdomains": true
    },
    "cmpassport.com": {
      "NSExceptionAllowsInsecureHTTPLoads": true,
      "NSExceptionRequiresForwardSecrecy": false,
      "NSIncludesSubdomains": true
    },
    "h2-cn.iot-dns.com": {
      "NSExceptionAllowsInsecureHTTPLoads": true
    },
    "h2-eu.iot-dns.com": {
      "NSExceptionAllowsInsecureHTTPLoads": true
    },
    "h2-in.iot-dns.com": {
      "NSExceptionAllowsInsecureHTTPLoads": true
    },
    "h2-ue.iot-dns.com": {
      "NSExceptionAllowsInsecureHTTPLoads": true
    },
    "h2-us.iot-dns.com": {
      "NSExceptionAllowsInsecureHTTPLoads": true
    },
    "h2-we.iot-dns.com": {
      "NSExceptionAllowsInsecureHTTPLoads": true
    },
    "uniteapp.ctwing.cn": {
      "NSExceptionAllowsInsecureHTTPLoads": true,
      "NSExceptionRequiresForwardSecrecy": false,
      "NSIncludesSubdomains": true
    }
  }
}
Url schemes
[
  {
    "CFBundleTypeRole": "Editor",
    "CFBundleURLSchemes": [
      "prefs"
    ]
  },
  {
    "CFBundleTypeRole": "Editor",
    "CFBundleURLName": "google",
    "CFBundleURLSchemes": [
      "com.googleusercontent.apps.749461155379-efhk7mg48tj46cj6b3j4hguv60v0p9lr"
    ]
  },
  {
    "CFBundleTypeRole": "Editor",
    "CFBundleURLName": "com.merkuryinnovations.geeni",
    "CFBundleURLSchemes": [
      "geeni"
    ]
  }
]
Required capabilities
[
  "arm64"
]

Static observations

1 recorded
Firebase

Firebase client configuration present

Project: geeni-837a5. Firebase client API keys are public identifiers by design. Presence alone does not establish a vulnerability; API restrictions and access rules were not tested.

Analysis record
Method
Stored static package extraction and inventory; not a live security test.
Coverage
Only the selected build is represented. Missing data means not analyzed, not safe. Scanner identity and scan time are unavailable for sources that did not record them.
Recorded extraction times
2026-01-02T20:51:06.992187, 2026-01-02T20:51:07.037854, 2026-01-02T20:51:07.082791, 2026-01-02T20:51:07.128338, 2026-01-02T20:51:07.164401, 2026-01-02T20:51:07.198729, 2026-01-02T20:51:07.264718, 2026-01-02T20:51:07.302309, 2026-01-02T20:51:07.338651, 2026-01-02T20:51:07.367570, 2026-01-02T20:51:07.402681, 2026-01-02T20:51:07.446556, 2026-01-02T20:51:07.491191, 2026-01-02T20:51:07.538615, 2026-01-02T20:51:07.577689, 2026-01-02T20:51:07.611992, 2026-01-02T20:51:07.646526, 2026-01-02T20:51:07.690581, 2026-05-23 20:19:28, 2026-05-23 20:44:37
Known version identifiers
42 (1 with metadata)

Browse version history on the app page →