From 836e2e4e91859b33b0d748192980c9cfe02cad59 Mon Sep 17 00:00:00 2001 From: Sergey Date: Thu, 19 May 2016 16:46:42 +0300 Subject: [PATCH] docs : Russian Russian language for http://electron.atom.io/docs/tutorial/mac-app-store-submission-guide/ --- .../mac-app-store-submission-guide.md | 145 ++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 docs-translations/ru-RU/tutorial/mac-app-store-submission-guide.md diff --git a/docs-translations/ru-RU/tutorial/mac-app-store-submission-guide.md b/docs-translations/ru-RU/tutorial/mac-app-store-submission-guide.md new file mode 100644 index 00000000000..480ec35f760 --- /dev/null +++ b/docs-translations/ru-RU/tutorial/mac-app-store-submission-guide.md @@ -0,0 +1,145 @@ + +#Руководство по утверждению вашего приложения в App Store + +Начиная с версии v0.34.0 Electron позволяет вам сформировать данные для App Store к вашему приложению. +Данное руководство представляет собой пошаговую инструкцию по созданию данных файлов. + +Помните, что когда Вы подаете свое приложение на рассмотрение в App Store Вы должны обладать аккаунтом разработчика, +который стоит денег. + +## Как отправить свое приложение на рассмотрение в App Store + +Последующие шаги подробно описывают, что и в какой последовательности Вам требуется сделать, но не гарантируют что Ваше приложение +будет рассмотрено Apple. Мы так же рекомендуем вам прочитать официальную документацию по оформлению своего приложения и информации к нему +чтобы пройти проверку в App Store. + +## Получение сертификата + +Перед тем, как отправить свое приложение Вы должны получить сертефикат, как это описано в этом [руководстве](https://github.com/nwjs/nw.js/wiki/Mac-App-Store-%28MAS%29-Submission-Guideline#first-steps "Ссылка на руководство") + +## Регистрируем свое приложение (подписываем) + +После того, как Вы получили сертефикат, Вы можете упаковать свое прилоежние следуя правилам Application Distribution, +а затем подписать свое приложение. Этот шаг является базовым, но подписывать свое приложение нам нужно всего лишь один раз. + +Во-первых, нам нужно подготовить два файла: + + child.plist: + + + + + + com.apple.security.app-sandbox + + com.apple.security.inherit + + + + + parent.plist: + + + + + + com.apple.security.app-sandbox + + com.apple.security.temporary-exception.sbpl + (allow mach-lookup (global-name-regex #"^org.chromium.Chromium.rohitfork.[0-9]+$")) + + + +Затем подписываем свое приложение, с помощью специального сценария: + #!/bin/bash + + # Имя вашего приложения. + APP="YourApp" + # Путь до вашейго приложения. + APP_PATH="/path/to/YourApp.app" + # Путь до вашего установочного пакета. + RESULT_PATH="~/Desktop/$APP.pkg" + # Имя сертификата которое вы хотите. + APP_KEY="3rd Party Mac Developer Application: Company Name (APPIDENTITY)" + INSTALLER_KEY="3rd Party Mac Developer Installer: Company Name (APPIDENTITY)" + + FRAMEWORKS_PATH="$APP_PATH/Contents/Frameworks" + + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Electron Framework" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Libraries/libffmpeg.dylib" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework/Versions/A/Libraries/libnode.dylib" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/Electron Framework.framework" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper.app/Contents/MacOS/$APP Helper" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper.app/" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper EH.app/Contents/MacOS/$APP Helper EH" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper EH.app/" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper NP.app/Contents/MacOS/$APP Helper NP" + codesign -s "$APP_KEY" -f --entitlements child.plist "$FRAMEWORKS_PATH/$APP Helper NP.app/" + codesign -s "$APP_KEY" -f --entitlements child.plist "$APP_PATH/Contents/MacOS/$APP" + codesign -s "$APP_KEY" -f --entitlements parent.plist "$APP_PATH" + + productbuild --component "$APP_PATH" /Applications --sign "$INSTALLER_KEY" "$RESULT_PATH" + +Если вы только начали разрабатывать под Mac OS X, то мы желаем Вам прочитать [App SandBox](https://developer.apple.com/library/ios/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/EnablingAppSandbox.html "Ссылка для новичков в разработке приложений для Mac OS X") + +## Обновление приложения + +После того, как Вы подписали свое приложение вы сможете загрузить его в Itunes Connect для обработки, убедитесь, что вы создали [запись](https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/CreatingiTunesConnectRecord.html "ссылка на показ как создавать запись в Itunes Connect") перед отправкой. + +## Объяснение использования 'temporary-exception' + +Когда песочница Apple временно исключила ваше приложение, согласно [документации](https://developer.apple.com/library/mac/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/AppSandboxTemporaryExceptionEntitlements.html "Документация по исключениям") вам нужно объяснить насколько это важное исключение: + +>Примечание: если вы временно исключаете свое приложение, обязательно прочитайте и выполните рекомендации по правам на исключение. +>которые предоставляются в Itunes Connect. Самое важное указать почему ваше приложение должно быть исключенно. + +Вы можете объяснить, что ваше приложение построено на основе браузера Chromium, который использует Mach из-за его мульти-процесс архитектуры. Но есть еще вероятность, что ваше приложение не удалось проверить именно из-за этого. + +## Отправка приложения на проверку + +Следующие шаги описаны в официальной [документации](https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/SubmittingTheApp.html "Официальная статья по отправке приложения на проверку") + +#Ограничения в Mac App Store + +Для того чтобы удовлетворить всем просьбам SandBox App Store , некотоыре из модулей были отключены: +- crashReporter +- autoUpdater +и следующие проблемы были несколько изменены: +- Захват видео на некоторых машинах может не работать +- Некоторые специалньые возможности могут не работать +- Приложения не будут в курсе изменения DNS +Так же из за использования SandBox App Store некоторые возможности могут быть не доступны или ограничены, подробнее о ограничениях +Вы можете прочитать в [документации](https://developer.apple.com/app-sandboxing/ "Ссылка на ограничения в SandBox AppStore") + +# Криптографические алгоритмы котоыре использует Electron + +Смотря в какой стране и городе Вы находитесь Apple может потребовать от Вас задокументировать алгоритмы криптографии котоыре вы используете +и если потребуется то попросит предоставить Вас копию регистрации вашего алгоритма шифрования. + +Electron использует следующие алгоритмы шифрования: +- AES - NIST SP 800-38A, NIST SP 800-38D, RFC 3394 +- HMAC - FIPS 198-1 +- ECDSA - ANS X9.62–2005 +- ECDH - ANS X9.63–2001 +- HKDF - NIST SP 800-56C +- PBKDF2 - RFC 2898 +- RSA - RFC 3447 +- SHA - FIPS 180-4 +- Blowfish - https://www.schneier.com/cryptography/blowfish/ +- CAST - RFC 2144, RFC 2612 +- DES - FIPS 46-3 +- DH - RFC 2631 +- DSA - ANSI X9.30 +- EC - SEC 1 +- IDEA - “On the Design and Security of Block Ciphers” book by X. Lai +- MD2 - RFC 1319 +- MD4 - RFC 6150 +- MD5 - RFC 1321 +- MDC2 - ISO/IEC 10118-2 +- RC2 - RFC 2268 +- RC4 - RFC 4345 +- RC5 - http://people.csail.mit.edu/rivest/Rivest-rc5rev.pdf +- RIPEMD - ISO/IEC 10118-3 + +Если Вы используете необычный алгоритм, то вот статья о том как получить разрешение на использование собственного алгоритма шифрования в +рамках закона США - [статья](https://pupeno.com/2015/12/15/legally-submit-app-apples-app-store-uses-encryption-obtain-ern/ "Статья о том как получить разрешение на свой алгоритм шифрования")