mirror of
https://github.com/bulwarkmail/native.git
synced 2026-11-02 08:07:11 +00:00
The app now has two product flavors. `github` is the sideloaded APK as before, with the same package name and its in-app updater. `play` is a bundle for Google Play as `org.bulwarkmail.mobile`, without the updater or the installer permission, since Play forbids apps updating themselves. - `release-android.yml` builds the Play bundle in a second job, checks its signer, package name and permissions, and keeps it as an artifact. With `PLAY_SERVICE_ACCOUNT_JSON` set it uploads it to internal testing. - The Play flavor uses the new Firebase project; the GitHub flavor keeps the old one until the app re-registers its token when it changes. - Widget clicks and the device-sync account type follow the package name. - Photos come from the system picker without asking for media access, and the unused microphone permission from expo-camera is removed. - A manual workflow run without a tag no longer replaces the APK of the latest release.
29 lines
1.3 KiB
Kotlin
29 lines
1.3 KiB
Kotlin
package com.anonymous.bulwarkmobile
|
|
|
|
import com.anonymous.bulwarkmobile.sync.BulwarkDeviceSyncModule
|
|
import com.facebook.react.ReactPackage
|
|
import com.facebook.react.bridge.NativeModule
|
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
import com.facebook.react.internal.featureflags.ReactNativeNewArchitectureFeatureFlags
|
|
import com.facebook.react.uimanager.ViewManager
|
|
|
|
class BulwarkFcmPackage : ReactPackage {
|
|
override fun createNativeModules(reactContext: ReactApplicationContext): List<NativeModule> =
|
|
buildList {
|
|
add(BulwarkFcmModule(reactContext))
|
|
add(BulwarkUnifiedPushModule(reactContext))
|
|
add(BulwarkClientCertModule(reactContext))
|
|
add(BulwarkDeviceSyncModule(reactContext))
|
|
add(BulwarkWidgetsModule(reactContext))
|
|
add(BulwarkPdfModule(reactContext))
|
|
add(BulwarkBuildModule(reactContext))
|
|
// The bridge registers React Native's own module under this name.
|
|
if (ReactNativeNewArchitectureFeatureFlags.enableBridgelessArchitecture()) {
|
|
add(BulwarkHeadlessJsTaskSupportModule(reactContext))
|
|
}
|
|
}
|
|
|
|
override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> =
|
|
emptyList()
|
|
}
|