diff --git a/CHANGELOG.md b/CHANGELOG.md index 62f66aa..03e2856 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - **Custom style mood emoji**: custom polish styles can opt in (default off) to allow emotion-matched emoji; the prompt overrides R5 and post-processing keeps them on screen. Paste-only prompts that declare emoji opt-in are detected automatically. / **自定义风格情绪 emoji**:自定义润色风格可单独开启(默认关)按情绪点缀 emoji;提示词覆盖 R5,后处理保留上屏。仅粘贴声明允许 emoji 的 prompt 也会自动识别。 ### Fixed +- **Shared LevelDB privacy manifest**: ship `PrivacyInfo.xcprivacy` inside `OSGKeyboardShared.framework` so App Store Connect no longer rejects uploads for ITMS-91061 (leveldb via librime). / **Shared LevelDB 隐私清单**:在 `OSGKeyboardShared.framework` 内打包 `PrivacyInfo.xcprivacy`,避免 App Store Connect 因 ITMS-91061(librime 内嵌 leveldb)拒收。 - **PiP post-utterance yellow flash**: after a voice turn, the mic no longer briefly shows yellow「正在启动画中画」— hold ready once the session proved live, refresh host ready on ack, and avoid labeling an already-active PiP as `.starting`. / **PiP 句末黄色闪烁**:语音说完后麦克风不再短暂变黄并提示「正在启动画中画」——会话曾就绪后保持绿灯、ack 后立即刷新 host ready,且已激活的 PiP 不再标成 `.starting`。 - **English Shift after Return**: sentence autocapitalization treats newline as a new-line boundary (system keyboard behavior), so Notes-style multi-line Return arms Shift again. / **回车后英文 Shift**:句首自动大写将换行视为新行边界(对齐系统键盘),备忘录等多行回车后会重新点亮 Shift。 - **English Shift with stale proxy**: after our own insert/delete, autocap merges a local caret-prefix shadow when `documentContextBeforeInput` lags (e.g. period / Return in Notes). / **滞后前文下的英文 Shift**:自身插删后若 `documentContextBeforeInput` 滞后,自动大写会合并本地光标前文影子(如备忘录中的句号/回车)。 diff --git a/OSGKeyboardShared/PrivacyInfo.xcprivacy b/OSGKeyboardShared/PrivacyInfo.xcprivacy new file mode 100644 index 0000000..8bd4732 --- /dev/null +++ b/OSGKeyboardShared/PrivacyInfo.xcprivacy @@ -0,0 +1,27 @@ + + + + + + NSPrivacyTracking + + NSPrivacyTrackingDomains + + NSPrivacyCollectedDataTypes + + NSPrivacyAccessedAPITypes + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryUserDefaults + NSPrivacyAccessedAPITypeReasons + + CA92.1 + + + + + diff --git a/project.yml b/project.yml index 52850b0..74411eb 100644 --- a/project.yml +++ b/project.yml @@ -52,7 +52,7 @@ settings: STRING_CATALOG_GENERATE_SYMBOLS: YES CLANG_CXX_LANGUAGE_STANDARD: c++17 MARKETING_VERSION: "1.6.2" - CURRENT_PROJECT_VERSION: "47" + CURRENT_PROJECT_VERSION: "50" # 签名配置来自 Signing.local.xcconfig(gitignored,不会被覆盖) # 项目级签名 xcconfig,适用于所有 target @@ -350,10 +350,15 @@ targets: - "zh-Hans.lproj" - "**/*.swift.example" - "Resources/**" + - "PrivacyInfo.xcprivacy" - path: OSGKeyboardShared/en.lproj/Shared.strings buildPhase: resources - path: OSGKeyboardShared/zh-Hans.lproj/Shared.strings buildPhase: resources + # Privacy manifest required for LevelDB statically linked via librime + # (ITMS-91061). Must live in this framework bundle, not only the app/ext. + - path: OSGKeyboardShared/PrivacyInfo.xcprivacy + buildPhase: resources # Prefer sources+buildPhase over target-level `resources:` — the latter # was not emitting Copy Bundle Resources entries for this framework. - path: OSGKeyboardShared/Resources/Typing/English/english_lexicon.tsv