SmartDock Privacy Policy
Hushan Hushan (Shenzhen) Technology Co., Ltd.
Last updated: August 1, 2026
1. Introduction
Hushan Hushan (Shenzhen) Technology Co., Ltd. ("we," "us," or "our") respects and protects user privacy. This SmartDock Privacy Policy explains how we collect, use, store, share, transfer, disclose, and protect personal information when you use SmartDock and related services. By agreeing to the User Agreement or continuing to use the app after this Policy is presented, you acknowledge that you have read and understood this Policy.
SmartDock is a macOS Dock configuration, Profile management, and icon customization tool. We follow the principles of lawfulness, legitimacy, necessity, transparency, security, and data minimization. For users outside mainland China, this Policy is intended to be read together with applicable data protection, consumer protection, app-store, and platform requirements in your country or region.
This document applies to the macOS version of SmartDock. Downloads, updates, account services, payments, refunds, permission prompts, or system capabilities may be provided by the HSHS Tech website, the in-app email account service, Paddle checkout and customer portal, or the operating system, and may also be governed by their official terms, privacy policies, and on-screen notices.
2. Information We Do Not Actively Collect
Unless a feature clearly requires network transmission, content keywords, file names, media content, photo library content, or other information you enter, select, or process is normally used only for local processing on your device.
We do not actively collect sensitive information unrelated to product features, such as government ID numbers, bank card passwords, contact lists, SMS content, call records, or precise location.
3. Information We Collect and Use
| Category | Examples | Purpose |
|---|---|---|
| Local Profiles and settings | Dock items, order, appearance, display behavior, hidden-item preferences, and custom icon references | Store, edit, switch, and apply Dock Profiles locally on your Mac |
| App catalog information | App name, bundle ID, installation path, and public icon | Identify local apps that can be added to the Dock |
| Account and entitlement | Verified email, in-app account identifier, app identifier, session, and subscription state | Login, session renewal, and app-isolated subscription entitlement |
| Order and payment information | Paddle Customer, Subscription, and Transaction identifiers plus product, amount, currency, and payment status | Checkout, renewal, refund, entitlement restoration, and support verification |
| Feedback information | Feedback text, contact details, and attachments that you actively submit | Issue handling, responses, and troubleshooting |
| Update-check information | App version, update channel, and basic connection information produced by the network request | Check, download, and verify SmartDock updates from the HSHS Tech update source; Sparkle anonymous system profiling is not enabled |
| First-party product usage data | App ID, QUA, version/build, platform, preferred language, a random app-scoped installation identifier, session identifier, event time and name, success state, duration or latency, stable result or error code, a small set of low-cardinality context labels, and a derived User-Agent hash; the in-app account number may be included when signed in | Measure important features and real operation results to improve SmartDock. This analytics is enabled by default without a first-launch permission prompt and can be turned off under Application Settings > Privacy. Turning it off stops new reports and removes the pending queue and analytics installation identifier. Failed events may be retried in a bounded local queue and raw server-side events are retained for no more than 30 days. This system does not collect Profile, Dock, icon, or app-path content, user input, diagnostic logs, payment details, or crash reports; crash reporting is a separate capability |
| Crash diagnostic information | App ID, QUA, version/build, version_code, CFBundleVersion, macOS version and architecture, device model, process and crashed thread, exception or signal, module UUID and offset, redacted stack, occurrence time, and foreground state; KSCrash may include the in-app account number captured at crash time, while MetricKit is always anonymous; a redacted diagnostic ZIP covering two hours before and after the crash may be attached only when the current account matches | Automatically identify and fix fatal SmartDock crashes. KSCrash locally captures Mach exceptions, fatal signals, C++ exceptions, and NSExceptions, with Apple MetricKit as a system-side supplement; hangs, deadlocks, and SIGTERM are not monitored. Reports are normalized on-device with an allowlist and sent automatically to the HSHS Tech backend without a toggle or per-report confirmation, independently of the product analytics setting. Raw reports, the MetricKit inbox, and the pending queue each retain at most 20 owner-only items, with persisted backoff after failures. Registers, memory contents, full paths, console output, signposts, virtual-memory regions, tokens, and user content are excluded; redacted stacks are limited to 64 KiB, and diagnostic-ZIP failure does not block the crash event |
When you use core features, we access content that you actively select, import, or authorize. Processing is normally performed locally on your device. If account sync, payment verification, feedback, or customer support requires network processing, we process only the information necessary for that purpose.
4. Permission Use
- Read installed-app names, bundle IDs, installation paths, and public icons to build the app catalog available to the Dock
- Read and modify Dock settings, local Profiles, custom icons, and hidden-item preferences that you explicitly apply
- Access the network for email login, subscription purchase and management, entitlement refresh, update checks, feedback you initiate, first-party product analytics that is enabled by default and can be turned off in Application Settings, and automatic crash diagnostics that operate independently of the analytics setting
You can manage permissions in macOS System Settings. Disabling a permission may make the related feature unavailable, but it does not affect features that do not require that permission.
Local Processing Triggers and Frequency
| Capability/Component | Purpose | Information Processed | Processing Method | Frequency/Background Behavior |
|---|---|---|---|---|
| macOS Dock, app catalog, and local database capabilities | Read the app catalog, store Profiles, and apply Dock, hidden-item, and icon settings that you confirm | App names, bundle IDs, installation paths, public icons, Dock items, Profiles, hidden-item preferences, and icon references | Read public system information and store configuration only in SmartDock's local database; Dock or icon changes require your explicit action | Processed at launch, when the app catalog changes, when edits are saved, when Profiles switch, or when a session is restored |
| KSCrash and Apple MetricKit local crash processing | Capture, normalize, deduplicate, and automatically replay fatal SmartDock crashes | App and system version, architecture, device, process and thread, exception or signal, module UUID and offset, redacted stack, time, and foreground state; KSCrash may include the account number at crash time, MetricKit is anonymous, and redacted logs covering two hours before and after may be attached only for a matching account | KSCrash is installed before AppKit/UI creation and leaves raw reports on-device; MetricKit diagnostics are delivered by macOS on a best-effort basis. SmartDock allowlist-normalizes and one-to-one deduplicates both sources before automatic delivery to the HSHS Tech backend. Tokens are not stored and no data is sent to KSCrash contributors | Processed only for supported fatal crashes or when macOS delivers a MetricKit diagnostic. Small-batch replay runs after restart and app activation; each of the three local queues is capped at 20 items. Hangs, deadlocks, and SIGTERM are not monitored |
5. Third-Party SDKs and Services
SmartDock does not integrate advertising SDKs. Subscription checkout, cancellation, invoices, and payment-method management are completed on Paddle-hosted pages in the system browser. The app integrates the open-source Sparkle update framework to check and install signed updates from the HSHS Tech update source, with Sparkle anonymous system profiling disabled. It also integrates the open-source KSCrash framework for local fatal-crash capture and uses Apple MetricKit system diagnostics as a supplement. Both report sources are allowlist-normalized on-device, and KSCrash contributors do not receive crash data through the framework.
For details, please read the Third-Party SDK Sharing List, which lists SDK names, providers, purposes, shared information types, and privacy policy links. We evaluate the necessity of third-party services and require providers to process data lawfully, properly, and only as necessary.
The App does not integrate advertising SDKs, does not display third-party ads, and does not collect, use, or share device identifiers for ad delivery, attribution, or personalized advertising.
6. Sharing, Transfer, and Disclosure
We do not sell your personal information. We share it only with your consent, as necessary to provide the service, to comply with law, to handle disputes, or to protect users and the public.
If personal information is transferred due to a merger, split, acquisition, or asset transfer, we will require the new holder to continue to comply with this policy.
We may use de-identified, anonymized, or aggregated data for product quality analysis, compatibility optimization, security risk control, and service improvement.
7. Storage and Protection
We use reasonable security measures such as encryption, de-identification, access control, least-privilege authorization, log auditing, permission isolation, and transport security.
Unless otherwise required by law, we retain personal information only for as long as necessary for the purposes described in this policy. After the retention period, we delete, anonymize, or stop using the information according to law.
No internet transmission or electronic storage system can be guaranteed to be absolutely secure. Please protect your account, verification code, device, and authorization information. Contact us promptly if you discover leakage or abnormal use.
8. Clipboard and Sharing Notice
When you use copy, paste, share, receive links, invitation-code recognition, or similar features, the app may need to read or write clipboard content. System prompts may not distinguish local reading for feature implementation from upload or collection. Unless a feature clearly requires network submission, we do not upload clipboard content to our servers.
9. Your Rights
You may request access, correction, deletion, authorization withdrawal, account deletion, or an explanation of our personal information processing rules.
You can manage permissions in macOS System Settings, log out, delete your account, clear cache in the app, or contact us for requests that cannot be completed by yourself. Withdrawing authorization or deleting information may make some features unavailable.
To exercise these rights, contact us at feedback@hshstech.com. We will handle your request within the period required by applicable law.
10. Children
If you are a minor, please read this Policy and use the app under the guidance of your parent or legal guardian. If a guardian believes that we processed a minor's personal information without proper consent, please contact us.
11. Updates
We may update this Policy based on law, platform requirements, product features, or service changes. For material changes, we will provide notice through in-app prompts, page announcements, or other reasonable methods. If you disagree with the updated Policy, you may stop using the relevant service.
12. Contact Us
Email: feedback@hshstech.com
Address: Room 2312H2, Building A, Xinghe Century, Caitian Road, Futian District, Shenzhen, Guangdong, China