mirror of
https://github.com/bulwarkmail/native.git
synced 2026-11-01 16:05:39 +00:00
CI: - .github/workflows/release-android.yml builds APK on release publish and via workflow_dispatch, attaches it to the release. - android/app/build.gradle: optional release signingConfig driven by Gradle properties (ANDROID_KEYSTORE_BASE64 secret etc.); falls back to the debug keystore when no secrets are set. - .gitignore: untrack /android so the runner can build directly; ignore build outputs (build/, .cxx/), Metro/Expo dev logs, scratch. Track android/ sources including BulwarkFcmPackage.kt and google-services.json (Firebase Android keys are public per Google's docs and intended to ship in the APK). JS sync: push notifications + background task, vacation responder (api + store), contact activity component, search utilities, settings polish, calendar/contacts/email store and screen tweaks. Tooling: scripts/poll-reload.mjs — Windows polling-watcher that hits Metro /reload on file change (workaround for unreliable fs.watch without Watchman).
19 lines
562 B
Kotlin
19 lines
562 B
Kotlin
package com.anonymous.bulwarkmobile
|
|
|
|
import android.content.Intent
|
|
import com.facebook.react.bridge.Arguments
|
|
import com.facebook.react.jstasks.HeadlessJsTaskConfig
|
|
import com.facebook.react.HeadlessJsTaskService
|
|
|
|
class BulwarkPushTaskService : HeadlessJsTaskService() {
|
|
override fun getTaskConfig(intent: Intent?): HeadlessJsTaskConfig? {
|
|
val extras = intent?.extras ?: return null
|
|
return HeadlessJsTaskConfig(
|
|
"BulwarkPushTask",
|
|
Arguments.fromBundle(extras),
|
|
30000L,
|
|
false,
|
|
)
|
|
}
|
|
}
|