Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(android): resolve private views through UI manager directly #1121

Merged
merged 3 commits into from
Feb 5, 2024

Conversation

a7medev
Copy link
Contributor

@a7medev a7medev commented Feb 5, 2024

Description of the change

Eliminate the use of UIManagerModule.prependUIBlock which causes crashes due to UIOperation objects being null while React Native's UIViewOperationQueue is trying to execute it which causes a NullPointerException, and instead resolve the view directly using UIManagerModule.resolveView.

Type of change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Related issues

Jira ID: INSD-10851

Fixes #514

Checklists

Development

  • Lint rules pass locally
  • The code changed/added as part of this pull request has been covered with tests

Code review

  • This pull request has a descriptive title and information useful to a reviewer
  • Issue from task tracker has a link to this pull request

@a7medev a7medev self-assigned this Feb 5, 2024
@a7medev a7medev changed the base branch from master to dev February 5, 2024 13:28
@mnoseir
Copy link

mnoseir commented Feb 5, 2024

Coverage Report

Label Coverage Status
JavaScript 96.2%
Android 49.2%
iOS 40.7%

Generated by 🚫 dangerJS against e43eef9

@mnoseir
Copy link

mnoseir commented Feb 5, 2024

Your snapshot has been generated! 🚀

Installation

You can install the snapshot through NPM:

npm install https://github.com/Instabug/Instabug-React-Native\#snapshot/12.6.0-INSD-10851

or Yarn:

yarn add https://github.com/Instabug/Instabug-React-Native\#snapshot/12.6.0-INSD-10851

Copy link
Contributor

@abdelhamid-f-nasser abdelhamid-f-nasser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice catch 👍 @a7medev !!

Just a quick question, Is this the same issue where the getReactApplicationContext crashes due to NPE?

@a7medev a7medev merged commit 0942b38 into dev Feb 5, 2024
9 of 11 checks passed
@a7medev a7medev deleted the fix/private-views-resolution branch February 5, 2024 19:20
ahmedAlaaInstabug added a commit that referenced this pull request Feb 18, 2024
* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
ahmedAlaaInstabug added a commit that referenced this pull request Feb 19, 2024
* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* feat: add more crash scenarios to example app (#1131)

* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>

* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* fix:lint issue

* fix:  CHANGELOG typo issue

Co-authored-by: Abdelhamid Nasser <[email protected]>

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
ahmedAlaaInstabug added a commit that referenced this pull request Feb 20, 2024
* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
ahmedAlaaInstabug added a commit that referenced this pull request Feb 20, 2024
* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* feat: add more crash scenarios to example app (#1131)

* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>

* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* fix:lint issue

* fix:  CHANGELOG typo issue

Co-authored-by: Abdelhamid Nasser <[email protected]>

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
abdelhamid-f-nasser added a commit that referenced this pull request Feb 27, 2024
* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
abdelhamid-f-nasser added a commit that referenced this pull request Feb 28, 2024
* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
abdelhamid-f-nasser added a commit that referenced this pull request Feb 28, 2024
* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
abdelhamid-f-nasser added a commit that referenced this pull request Feb 28, 2024
* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* feat: add more crash scenarios to example app (#1131)

* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>

* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* fix:lint issue

* fix:  CHANGELOG typo issue

Co-authored-by: Abdelhamid Nasser <[email protected]>

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
abdelhamid-f-nasser added a commit that referenced this pull request Feb 28, 2024
* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
abdelhamid-f-nasser added a commit that referenced this pull request Feb 28, 2024
* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* feat: add more crash scenarios to example app (#1131)

* feat(example): add nested complex views (#1111)

Jira ID: MOB-13737

* fix hybrid mode code push version init (#1108)

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* ci: migrate macos machines to m1 (#1114)

* feat: support identify user by id (#1115)

Jira ID: MOB-13746

* ci: replace  d11 cluster url in UploadSourcemaps (#1122)

* fix(android): resolve private views through UI manager directly (#1121)

* feat: support switching to native network interception (#1120)

* feat(example): Add more sdk crashes buttons

* chore(android): ignore jetbrains ide run configurations (#1110)

Jira ID: MOB-13736

* feat(example): Add more sdk crashes buttons

* fix dev merge issue

* feat_add_crash_buttons

* feat_add_crash_buttons

* feat_add_crash_buttons

* fix: PlatformListTile typo  name

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>

* feat_add_setNDKCrashesEnabled

* fix android_testing issue

* rename_test_cases

* fix_pr_comments

* feat/add-ndk-demo-crash-buttons

* chore: add ChangeLog changes

* Update CHANGELOG.md

Co-authored-by: Abdelhamid Nasser <[email protected]>

* fix:lint issue

* fix:  CHANGELOG typo issue

Co-authored-by: Abdelhamid Nasser <[email protected]>

---------

Co-authored-by: Abdelhamid Nasser <[email protected]>
Co-authored-by: Ahmed Mahmoud <[email protected]>
Co-authored-by: AbdElHamid Nasser <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants