Unity as a Library Support
メンテナーはふだん 3 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 領域
- game-dev, mobile-dev
調査の方向性
まず、AndroidNativeSupportEnabled と IosNativeSupportEnabled オプション、および pull request 1924 と 1915 で参照されているネイティブ初期化の変更を読みます。シンボル処理について Il2CppBuildPreProcess.cs、AndroidManifestConfiguration.cs、BuildPostProcess.cs、SentryXcodeProject.cs を確認します。Unity as a Library が Android、iOS、UWP におけるネイティブ SDK と Unity SDK のセットアップ、スコープの同期、シンボルのアップロードを連携して行える状態が完了の基準です。
索引モデルが issue の本文から書いたものです。
説明
The Problem
Unity as a Library allows users to export the game as a library to be embedded in a different app. Right now, the SDK assumes the game gets exported as a standalone app on all platforms.
See the relevant Unity docs. The currently supported platforms are Android, iOS, and UWP.
Context - Android Investigation
I did some testing on Android and have a couple of findings:
- How to capture native crashes with the Android SDK see here - It details how to set up the Android SDK to "cover" the activity Unity uses to run the game
- How to capture C# errors see here - It details how to currently configure the Unity SDK to work in the UaaL usecase
Issues
- The guides above are not connected in any way. This leads to a lack of scope sync, breadcrumbs, and Unity context in native crashes.
- Symbol Upload is unresolved. If the library is exported, can those symbols be guaranteed to be present when building the actual app? Afaik we need to keep automatically emitting IL2CPP line mappings and uploaded, see
IL2CPP Pre Build- Windows:
UploadSymbols - Android:
UploadSymbols - iOS:
UploadSymbols
Proposal
With the changes to how the native SDKs get initialized in for Android (see https://github.com/getsentry/sentry-unity/pull/1924) and iOS (see https://github.com/getsentry/sentry-unity/pull/1915) the SDK no longer assumes them to already be active and initializes and sets up scope sync right before initializing.
Finer control through the Options
This means that the options AndroidNativeSupportEnabled and IosNativeSupportEnabled would need to change. They control at build time whether to add the native SDK to the generated project and at runtime whether to attempt to initialize it.
We'd need:
- One set of options to enable the Unity SDK providing and adding the native SDKs at build time.
- One set of options to check at runtime whether to attempt to initialize and sync with the native SDK if one is found.
Bridge Modification
Which is already almost the UaaL environment. We could make the bridges be more robust in attempting to check whether there is a surrounding native SDK and then call into it. Ideally, this would be tied to a version check somehow, like we intend to do for consoles too.
- 主要言語
- C#
- スター
- 295
- フォーク
- 63
- 平均マージ
- 3日 17時間
- マージ済み PR(30日)
- 26
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
getsentry/sentry-unity のほかの issue
-
Feature Unity
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
getsentry/sentry-unity#2923 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
Tests Unity
難易度 4/5 3〜5日 初心者へのやさしさ 55/100
getsentry/sentry-unity#2918 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
Drop `Release` and `Environment` from the editor config window対応中かも @armadavalor が今日担当しました。 オープンBreaking Change Editor Good First Issue Improvement Unity
難易度 2/5 1〜3時間 初心者へのやさしさ 58/100
getsentry/sentry-unity#2914 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
getsentry/sentry-unity#2913 · コメント 1 件 ·
メンテナーはふだん 3 日以内に返信
-
Feature Unity
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
getsentry/sentry-unity#2796 · コメント 4 件 ·
メンテナーはふだん 3 日以内に返信
getsentry/sentry-unity の issue をすべて見る
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Facepunch/sbox-public#12284 ·
メンテナーはふだん 6 日以内に返信
-
bug untriaged
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
CarlosAdrianM/Nesto#610 ·
-
[bug-bash] print maps a missing item's HTTP 404 to exit 1 instead of documented not-found exit 5オープンbug bug-bash
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
Azure/CosmosDBShell#279 ·
メンテナーはふだん 1 日以内に返信