Skip to content

Gradle KTS + async AIDL refactor#27

Merged
FrenkyDema merged 3 commits into
mainfrom
cleanup/project-migration
May 20, 2026
Merged

Gradle KTS + async AIDL refactor#27
FrenkyDema merged 3 commits into
mainfrom
cleanup/project-migration

Conversation

@FrenkyDema
Copy link
Copy Markdown
Owner

Migrate Android build to Kotlin DSL and modernize native plugin API. Replaced legacy android/build.gradle and wrapper files with Gradle KTS (build.gradle.kts, settings.gradle.kts), bumped compileSdk and Java compatibility, and adjusted repositories/dependencies.
Heavily refactored SunmiTaskPrinterMethod to non-blocking async calls: methods now accept a MethodChannel.Result, dispatch work on a background executor, post results on the main thread, and use dummy ICallback/ILcdCallback implementations to satisfy AIDL without blocking.
Service bind/unbind handling improved (pending result support) and printer status codes are mapped to readable strings.
Also simplified .gitignore, updated project metadata revision, removed an AIDL query from AndroidManifest, and added an IDE run configuration for refreshing the Android environment.

Migrate Android build to Kotlin DSL and modernize native plugin API. Replaced legacy android/build.gradle and wrapper files with Gradle KTS (build.gradle.kts, settings.gradle.kts), bumped compileSdk and Java compatibility, and adjusted repositories/dependencies. Heavily refactored SunmiTaskPrinterMethod to non-blocking async calls: methods now accept a MethodChannel.Result, dispatch work on a background executor, post results on the main thread, and use dummy ICallback/ILcdCallback implementations to satisfy AIDL without blocking. Service bind/unbind handling improved (pending result support) and printer status codes are mapped to readable strings. Also simplified .gitignore, updated project metadata revision, removed an AIDL query from AndroidManifest, and added an IDE run configuration for refreshing the Android environment.
@FrenkyDema FrenkyDema self-assigned this May 20, 2026
@FrenkyDema FrenkyDema added enhancement New feature or request clean up Upgrade project files labels May 20, 2026
@FrenkyDema FrenkyDema added this to the v0.1 milestone May 20, 2026
Add GitHub Actions workflows for analysis/test (analyze_and_test.yml), coverage reporting and pages deployment with a coverage badge (coverage.yml), and publishing to pub.dev on version tags (publish.yml). Remove older flutter.yml and pull_request_automerge.yml workflows. Update example and unit tests to use MethodChannel mocks and more robust assertions: expand the integration test to verify graceful behavior on non-Sunmi devices, update the example widget test to mock channel responses and assert UI metadata, and rewrite unit tests to record MethodChannel calls and add checks for bindingService, paperSize, printText, printRow, printer status and serial number handling. Minor formatting fix in method-channel test file.
Add detailed 0.1.0 release notes to CHANGELOG.md describing a major architecture refactor and modernization (Android migrated to Gradle Kotlin DSL, compileSdk 36, Java 17, non-blocking SunmiTaskPrinterMethod, decoupled MethodChannel resolution, new hardwareErrorStream EventChannel), Dart/plugin optimizations (printRow parsing improvements, service binding fixes, status code mapping, stricter typings), and example app & CI enhancements. Also bump package version in pubspec.yaml from 0.0.1 to 0.1.0.
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label May 20, 2026
@FrenkyDema FrenkyDema enabled auto-merge May 20, 2026 14:25
@FrenkyDema FrenkyDema merged commit 64b1539 into main May 20, 2026
2 checks passed
@FrenkyDema FrenkyDema deleted the cleanup/project-migration branch May 20, 2026 14:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

android clean up Upgrade project files documentation Improvements or additions to documentation enhancement New feature or request example lib test workflows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant