macos - Apple不再接受使用Electron App的QuickTime或QTKit API的应用程序的提交

标签 macos electron

我收到了来自Apple的以下 Electron 邮件。

 Deprecated API Usage - Apple no longer accepts submissions of apps that use QuickTime or QTKit APIs.
 Once these issues have been corrected, you can then redeliver the corrected binary. 

我正在使用Electron,并已通过此处的引用文献注册了该应用程序。

https://github.com/atom/electron/blob/master/docs/tutorial/mac-app-store-submission-guide.md

如何找到QuickTime或QTKit,有没有办法将其删除?

我用0.34.3的 Electron
我用了这个资料库

https://github.com/atom/electron-quick-start

构建 shell 在这里。
#! /bin/bash

APP="HogeApp"
APP_ID="com.md-note.HogeApp"
APP_PATH="HogeApp.app"
FRAMEWORKS_PATH="$APP_PATH/Contents/Frameworks"
APP_KEY="3rd Party Mac Developer Application: Xxx Yyy (XXXXXXXXX)"
INSTALLER_KEY="3rd Party Mac Developer Installer: Xxx Yyy (XXXXXXXXX)"
APP_VERSION="1.0.3"

electron-packager ./build/electron HogeApp --overwrite --platform=darwin --arch=x64 --version=0.34.3 --asar=true --icon=./build/electron/assets/icon.icns

sed -i -e "/<key>CFBundleIdentifier<\/key>/N;s#\(<key>CFBundleIdentifier</key>.*<string>\).*\(</string>\)#\1${APP_ID}\2#" "./HogeApp-darwin-x64/HogeApp.app/Contents/Info.plist"
sed -i -e "/<key>CFBundleShortVersionString<\/key>/N;s#\(<key>CFBundleShortVersionString</key>.*<string>\).*\(</string>\)#\1${APP_VERSION}\2#" "./HogeApp-darwin-x64/HogeApp.app/Contents/Info.plist"
sed -i -e "/<key>CFBundleVersion<\/key>/N;s#\(<key>CFBundleVersion</key>.*<string>\).*\(</string>\)#\1${APP_VERSION}\2#" "./HogeApp-darwin-x64/HogeApp.app/Contents/Info.plist"
sed -i -e "/<key>CFBundleIdentifier<\/key>/N;s#\(<key>CFBundleIdentifier</key>.*<string>\).*\(</string>\)#\1${APP_ID}.helper.EH\2#" "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper EH.app/Contents/Info.plist"
sed -i -e "/<key>CFBundleIdentifier<\/key>/N;s#\(<key>CFBundleIdentifier</key>.*<string>\).*\(</string>\)#\1${APP_ID}.helper.NP\2#" "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper NP.app/Contents/Info.plist"
sed -i -e "/<key>CFBundleIdentifier<\/key>/N;s#\(<key>CFBundleIdentifier</key>.*<string>\).*\(</string>\)#\1${APP_ID}.helper\2#" "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper.app/Contents/Info.plist"

rm "./HogeApp-darwin-x64/HogeApp.app/Contents/Info.plist-e"
rm "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper EH.app/Contents/Info.plist-e"
rm "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper NP.app/Contents/Info.plist-e"
rm "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper.app/Contents/Info.plist-e"

rm -rf "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/Electron Framework.framework/Resources/crashpad_handler"
rm -rf "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/Electron Framework.framework/Libraries"
rm -rf "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/Squirrel.framework/Resources/ShipIt"
rm -rf "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper EH.app"
rm -rf "./HogeApp-darwin-x64/HogeApp.app/Contents/Frameworks/HogeApp Helper NP.app"


cd HogeApp-darwin-x64

codesign --deep -fs "$APP_KEY" --entitlements ../macosx/child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Libraries/libnode.dylib"
codesign --deep -fs "$APP_KEY" --entitlements ../macosx/child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Electron Framework"
codesign --deep -fs "$APP_KEY" --entitlements ../macosx/child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/"
codesign --deep -fs "$APP_KEY" --entitlements ../macosx/child.plist "$FRAMEWORKS_PATH/$APP Helper.app/"
#codesign --deep -fs "$APP_KEY" --entitlements ../macosx/child.plist "$FRAMEWORKS_PATH/$APP Helper EH.app/"
#codesign --deep -fs "$APP_KEY" --entitlements ../macosx/child.plist "$FRAMEWORKS_PATH/$APP Helper NP.app/"
codesign --deep -fs "$APP_KEY" --entitlements ../macosx/parent.plist HogeApp.app

productbuild --compone`enter code here`nt "HogeApp.app" /Applications --sign "$INSTALLER_KEY" "HogeApp.pkg"

最佳答案

MAS版本的Electron的最新版本已对此进行了纠正,只需更新并重新提交即可。

关于macos - Apple不再接受使用Electron App的QuickTime或QTKit API的应用程序的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33591941/

相关文章:

reactjs - 如何在 Electron react 应用中创建子窗口?

php - 升级到 Mac OSX Sierra 时遇到 mcrypt 错误问题

javascript - 完全加载后显示窗口

android 模拟器不在 iMac 中的蓝牙耳机上播放声音

java - 为什么 App Engine Web 应用程序会意外终止?

javascript - 如何使用 Spectron 访问客户端窗口 javascript 全局变量

javascript - 在 Electron Forge 配置中区分 make 和 package

javascript - Electron React 应用程序上的 Sentry/Raven - 我做错了什么?

android - 如何修复 : "HAX is not working and emulator runs in emulation mode"

objective-c - 使用 Cocoa 或 Applescript 获取 OSX 桌面上图标的大小