Unity as a Library Support
Maintainer thường phản hồi trong vòng 3 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Lĩnh vực
- game-dev, mobile-dev
Hướng nghiên cứu
Bắt đầu bằng cách đọc các tùy chọn AndroidNativeSupportEnabled và IosNativeSupportEnabled, cùng các thay đổi về khởi tạo native được tham chiếu trong các pull request 1924 và 1915. Xem xét Il2CppBuildPreProcess.cs, AndroidManifestConfiguration.cs, BuildPostProcess.cs và SentryXcodeProject.cs về việc xử lý symbol. Công việc được xem là hoàn tất khi Unity as a Library đã điều phối việc thiết lập native SDK và Unity SDK, đồng bộ scope và tải symbol lên trên Android, iOS và UWP.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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.
- Ngôn ngữ chính
- C#
- Star
- 294
- Fork
- 63
- Merge trung bình
- 3 ngày 17 giờ
- Pull request đã merge (30 ngày)
- 26
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của getsentry/sentry-unity
-
Feature Unity
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 45/100
getsentry/sentry-unity#2923 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Tests Unity
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 55/100
getsentry/sentry-unity#2918 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Drop `Release` and `Environment` from the editor config windowCó thể đã có người làm @armadavalor đã nhận 5 ngày trước. Đang mởBreaking Change Editor Good First Issue Improvement Unity
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 58/100
getsentry/sentry-unity#2914 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Make CI stable and fasterĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
getsentry/sentry-unity#2913 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
Feature Unity
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
getsentry/sentry-unity#2796 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
Tất cả issue của getsentry/sentry-unity
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
juandresrodca/AdminForge#54 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
[辞書] C/C++のプリプロセッサ指令名を英字のままにするĐang mở要トリアージ 辞書
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 86/100
yksr-melt/Meltype#1625 · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Docs typoĐang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 78/100
MonoGame/docs.monogame.github.io#328 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
space-wizards/RobustToolbox#7197 ·
Maintainer thường phản hồi trong vòng 1 ngày