Shiply Pro SDK Compliance Usage Guide
To help developer-operators using the Shiply Pro SDK (hereinafter referred to as "you") integrate and use third-party SDKs in compliance with personal information protection laws, regulations, policies, and standards, Shiply Pro (hereinafter referred to as "we") has prepared this Shiply Pro SDK Integration and Usage Documentation (hereinafter referred to as "this document") to help you meet corresponding compliance requirements when using the Shiply Pro SDK. Please read and fully understand this document before integrating and using the Shiply Pro SDK.
I. Integrate/Upgrade to the Latest SDK Version Meeting New Regulatory Requirements
We highly prioritize SDK feature optimization, personal information security, and protection. We will upgrade SDK versions as appropriate to improve product security and stability, ensuring compliance with the latest laws, regulations, regulatory, and standard requirements. We strongly recommend upgrading to the latest SDK version to ensure you can use the latest SDK features normally and avoid adverse impacts from delayed updates (such as app takedown notifications).
After SDK updates, we will promptly notify you of update content through official website announcements, SDK changelogs, or other appropriate means so you can stay informed of the latest SDK version information. You can also visit the latest SDK version link.
II. Disclose Third-Party SDK Information in Your App Privacy Policy
Third-Party SDK Name: Shiply Pro SDK
Third-Party SDK Provider: Shenzhen Tencent Computer Systems Co., Ltd.
Purpose and Feature Scenarios: Provides developers with dynamic configuration switch delivery, dynamic resource file delivery, in-app upgrade, and online hotfix capabilities
Types of Personal Information Processed: User ID, device model, device manufacturer, device operating system version, whether the device has a 64-bit processor, app version number, app channel information
Permissions Required for SDK Functionality: Network access permission
Third-Party SDK Privacy Policy Link: https://privacy.qq.com/document/preview/2425a93212a847b7a2605d5d2299030d
Third-Party SDK Official Website Link (optional disclosure): https://shiply.tds.qq.com/
Processing Methods (optional disclosure): 1. SSL protocol encryption and HTTPS transmission encryption for security; 2. Encryption, de-identification, and other security measures for desensitization
III. Obtain User Consent Before Initializing the SDK
To meet legal and regulatory requirements, you must ensure that you initialize the SDK only after obtaining user consent, and complete request calls by configuring SDK parameters after users trigger specific SDK feature services. The SDK will then collect personal information or request permissions required for the feature according to your configuration. To avoid the SDK collecting and using user personal information before you obtain user consent, the SDK provides API interfaces for delayed SDK initialization and compliant initialization technical configuration solutions. Click /here/ to view detailed operation instructions.
Ensure that after users read the app privacy policy and grant authorization, you call the init interface to initialize the SDK at the appropriate time according to app feature needs. Conversely, if users do not agree to the Privacy Policy authorization, you must not call the initialization interface. This interface performs initialization only and does not collect personal information.
Do not dynamically request sensitive device permissions involving user personal information before users agree to the privacy policy; do not privately collect and report personal information before users agree to the privacy policy (especially note Android_ID, OAID, IMEI, MAC address, hardware serial number, app installation list, and other user information). Do not request SDK-related services when the app is inactive (such as when the app is running in the background).
IV. Optional Information Configuration Switches
The SDK provides control switches for optional personal information and permissions. You can configure privacy information request switches on or off according to the SDK feature services your app requires.
1. Configure Optional Personal Information
Please note that the SDK does not forcibly obtain optional parameters. Even without optional parameters, the SDK's basic functions operate normally. You can configure optional parameters to use other optional SDK features. We recommend calling SDK-provided methods at appropriate times before making requests to obtain declared parameter information with user authorization.
| Personal Information Type | Purpose and Feature Scenario | Processing Method | Configuration Method |
| Personal information subject account (UserID) Optional | Determine whether to deliver tasks based on user number package during task pull | Encrypted and sent to Shiply backend for rule matching; not stored | ShiplyParams.Builder().userId() |
| Phone system version /Optional/ | Determine whether to deliver tasks based on OS version during task pull | Encrypted and sent to Shiply backend for rule matching; not stored | ShiplyParams.Builder().androidSystemVersion () |
| Whether phone has 64-bit processor /Optional/ | Determine whether to deliver tasks based on OS version during task pull | Encrypted and sent to Shiply backend for rule matching; not stored | ShiplyParams.Builder().is64BitCpu () |
| Phone model /Optional/ | Determine whether to deliver tasks based on OS version during task pull | Encrypted and sent to Shiply backend for rule matching; not stored | ShiplyParams.Builder().devModel () |
| Phone manufacturer /Optional/ | Determine whether to deliver tasks based on OS version during task pull | Encrypted and sent to Shiply backend for rule matching; not stored | ShiplyParams.Builder().devManufacturer () |
| App version number /Optional/ | Determine whether to deliver tasks based on OS version during task pull | Encrypted and sent to Shiply backend for rule matching; not stored | ShiplyParams.Builder().hostAppVersion () |
| App channel information /Optional/ | Used for operational data drill-down | Encrypted and sent to Shiply backend; stored | ShiplyParams.Builder().appChannel () |
2. Guidance and Recommendations
Please pay special attention. When installing, running, and using related features of your app, you must comply with national laws, regulations, regulatory policies, and standard requirements when collecting user personal information or requesting sensitive permissions. The following violations are prohibited:
(1) Collecting any personal information without user consent.
(2) Automatically exiting or closing the app when users reject related authorization requests in scenarios not required by the service or without reasonable application scenarios.
(3) Repeatedly popping up or applying for permissions unrelated to the current service scenario after users explicitly reject permission requests, affecting normal use. We recommend requesting sensitive permissions at appropriate times without affecting other feature availability.
(4) Not clearly informing users of the purpose and use of requested permissions.
(5) Requesting sensitive permissions in advance when related features or services corresponding to the permissions are not in use when the app first opens or during operation.
(6) Excessively collecting personal information beyond actual business feature needs.
V. Demo Usage Instructions
To help you quickly understand and experience SDK features, we provide an SDK Demo for your reference only — it is not a production product. Please understand that because Demo operation differs from production app operation, to enable Demo normal operation and provide you with the most comprehensive SDK feature experience possible, we reference certain dependency libraries in the Demo, limited to Demo scenarios only. When integrating the production SDK product, please follow the official SDK integration documentation.
Demo address: https://github.com/BuglyDevTeam/Shiply-Android-IntegrationDemo
VI. Contact Information
We have established a dedicated personal information protection team and personal information protection officer. If you and/or end users have any questions, complaints, or suggestions regarding these rules or personal information protection matters, you can contact us through the following methods:
(i) Contact us through Tencent Customer Service (https://kf.qq.com/) or by submitting a ticket (link attached)
(ii) Send questions to Dataprivacy@tencent.com;
(iii) Mail to: Data Privacy Protection Department, Tencent Binhai Tower, No. 33 Haitian 2nd Road, Nanshan District, Shenzhen, Guangdong Province, China. Postal code: 518054.
We will review the matter as soon as possible and respond within 15 business days or within the period required by laws and regulations.
VII. Important Notes
1. Compliance Self-Check Before Integrating Shiply Pro SDK
To ensure you obtain end user authorization for using this SDK and comply with personal information protection requirements and compliance procedures, we recommend conducting a compliance self-check before integrating the Shiply Pro SDK.
1) Please carefully read and conduct a compliance self-check of your app's Privacy Policy according to the guidance in this document.
2) Be sure to configure delayed initialization to ensure SDK initialization occurs only after obtaining user consent.
3) When the Shiply Pro SDK is updated based on the latest laws, regulations, or regulatory requirements, please promptly upgrade the Shiply Pro SDK integrated in your app to the latest version upon receiving version update notifications.
4) Other requirements of national laws, regulations, regulatory policies, and standards.
2. Compliance Documents for Developer Reference
(1) Personal Information Protection Law of the People's Republic of China
(6) Methods for Identifying Illegal and Improper Collection and Use of Personal Information by Apps
(9) GB/T 35273-2020 Information Security Technology — Personal Information Security Specification