feat(android): add system/photos/contacts/calendar/motion capabilities#29398
feat(android): add system/photos/contacts/calendar/motion capabilities#29398
Conversation
Greptile SummaryAdded comprehensive Android handlers for iOS-parity capabilities including system notifications, photos, contacts, calendar, and motion/pedometer. Implementation follows established patterns with clean separation via data source interfaces, proper permission handling, and thorough test coverage. Key changes:
Confidence Score: 4/5
Last reviewed commit: 535196f |
apps/android/app/src/main/java/ai/openclaw/android/node/MotionHandler.kt
Show resolved
Hide resolved
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 535196fccf
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
apps/android/app/src/main/java/ai/openclaw/android/node/MotionHandler.kt
Outdated
Show resolved
Hide resolved
apps/android/app/src/main/java/ai/openclaw/android/node/MotionHandler.kt
Outdated
Show resolved
Hide resolved
1dd25bf to
3986419
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 398641926f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| requiresForeground = true, | ||
| ), | ||
| InvokeCommandSpec( | ||
| name = OpenClawSystemCommand.Notify.rawValue, |
There was a problem hiding this comment.
Allowlist Android system.notify by default
This commit advertises system.notify for Android nodes, but the gateway’s Android default allowlist still omits that command (src/gateway/node-command-policy.ts, and src/gateway/gateway-misc.test.ts expects allow.has("system.notify") to be false), so default node.invoke requests will be rejected as command not allowlisted. As shipped, the new Android system.notify path is effectively unusable unless operators add a manual gateway.nodes.allowCommands override.
Useful? React with 👍 / 👎.
(cherry picked from commit 41797fc)
(cherry picked from commit 41797fc)
(cherry picked from commit 41797fc)
(cherry picked from commit 079bc24)
(cherry picked from commit 079bc24)
Summary
system.notifyphotos.latestcontacts.search,contacts.addcalendar.events,calendar.addmotion.activity,motion.pedometerTesting
cd apps/android && ./gradlew :app:testDebugUnitTestmotion.pedometeron emulator (step counting not supported), which is expected hardware limitation.