Skip to content

fix(android): Ignore non-element manifest children - #701

Merged
jamieQ merged 1 commit into
mainfrom
test/android-manifest-stray-text
Oct 19, 2026
Merged

jamieQ merged 1 commit into
mainfrom
test/android-manifest-stray-text

Conversation

@jamieQ

@jamieQ jamieQ commented Oct 16, 2026

Copy link
Copy Markdown
Member

APK manifests containing text between elements fail processing because conversion treats XmlCData children as elements and accesses their missing namespace_uri field.

Convert only element children, since manifest values are stored in attributes. Add a synthetic binary XML fixture compiled with aapt2 to verify that text is skipped while neighboring elements, attributes, and extracted metadata are preserved.

Fixes EME-1335

Keep manifest conversion focused on element nodes so embedded text does not prevent APK metadata
extraction. Cover the failure with a synthetic binary XML fixture compiled by aapt2.

Fixes EME-1335
@linear-code

linear-code Bot commented Oct 16, 2026

Copy link
Copy Markdown

EME-1335

@sentry

sentry Bot commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Size Analysis

1 component analyzed, 1 component processing

iOS Builds

Name Configuration Version Download Size Install Size
HackerNews (iOS)
com.emergetools.hackernews
Release 3.8 (1) 6.5 MB (N/A) 9.7 MB (N/A)

Android Builds

Name Configuration Version Download Size Uncompressed Size
Hacker News (Android)
com.emergetools.hackernews
Release 1.0.2 (13) Processing... (-) Processing... (-)

Configure launchpad-test-ios status check rules

@sentry

sentry Bot commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

📲 Install Builds

iOS

🔗 App Name App ID Version Configuration
HackerNews com.emergetools.hackernews 3.8 (1) Release

Android

🔗 App Name App ID Version Configuration
Hacker News com.emergetools.hackernews 1.0.2 (13) Release

⚙️ launchpad-test-android Build Distribution Settings

@jamieQ
jamieQ marked this pull request as ready for review October 16, 2026 21:47

@runningcode runningcode left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM! thanks!

def _load_manifest_with_text(fixtures_root: Path) -> bytes:
# Synthetic manifest compiled with aapt2:
# <manifest><application><activity>
# <meta-data android:name="com.example.flag" android:value="true" />example text

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

this example helps visualize this!

@jamieQ
jamieQ merged commit 22933e0 into main Oct 19, 2026
25 checks passed
@jamieQ
jamieQ deleted the test/android-manifest-stray-text branch October 19, 2026 14:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants