Skip to content

feat(android): add native mobile ink support#20

Closed
markm39 wants to merge 1 commit into
mainfrom
feat/android-version
Closed

feat(android): add native mobile ink support#20
markm39 wants to merge 1 commit into
mainfrom
feat/android-version

Conversation

@markm39
Copy link
Copy Markdown
Contributor

@markm39 markm39 commented May 13, 2026

Summary

  • Add an Android React Native library implementation for @mathnotes/mobile-ink, backed by the shared C++ Skia engine and exposed through MobileInkCanvasView plus MobileInkModule.
  • Wire Android autolinking/package contents and align Android batch export with iOS page-index/PDF behavior.
  • Update docs/README for Android support and pin the example app's transitive PostCSS patch release so audits are clean.

Verification

  • npm run typecheck
  • npm test -- --runInBand
  • npm run test:native:smoke
  • npm run build
  • npm run test:example:typecheck
  • npm run test:example:export:ios
  • npm pack --dry-run --ignore-scripts
  • npm audit --audit-level=moderate
  • npm audit --prefix example --audit-level=moderate
  • npm ci --prefix example
  • npx expo prebuild --platform android --no-install
  • ./gradlew :app:assembleDebug --no-daemon
  • ./gradlew :mathnotes_mobile-ink:compileDebugKotlin --no-daemon

Review gates

  • /simplify: addressed the brittle Android export JSON parsing by decoding payloads in Kotlin before JNI; removed deprecated MapBuilder; added Android-local generated-output ignores.
  • /security: removed noisy URI/touch debug logs from the Android port and fixed the example PostCSS audit advisory with a narrow override instead of the breaking audit-force path.

Verification gap

  • I did not run a live Android emulator/device drawing interaction in this session. The Android validation here is native compilation, autolinking through the generated example app, package contents, and APK assembly.

@markm39 markm39 closed this May 14, 2026
@markm39 markm39 deleted the feat/android-version branch May 14, 2026 13:01
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.

1 participant