|
23 | 23 | import com.qonversion.android.sdk.QonversionProductsCallback; |
24 | 24 | import com.qonversion.android.sdk.UpdatedPurchasesListener; |
25 | 25 | import com.qonversion.android.sdk.dto.QLaunchResult; |
| 26 | +import com.qonversion.android.sdk.dto.QPermissionsCacheLifetime; |
26 | 27 | import com.qonversion.android.sdk.dto.experiments.QExperimentInfo; |
27 | 28 | import com.qonversion.android.sdk.dto.offerings.QOffering; |
28 | 29 | import com.qonversion.android.sdk.dto.offerings.QOfferings; |
@@ -58,6 +59,18 @@ public class QonversionModule extends ReactContextBaseJavaModule { |
58 | 59 | put("KOCHAVA_DEVICE_ID", QUserProperties.KochavaDeviceId); |
59 | 60 | put("CUSTOM_USER_ID", QUserProperties.CustomUserId); |
60 | 61 | put("FACEBOOK_ATTRIBUTION", QUserProperties.FacebookAttribution); |
| 62 | + put("FIREBASE_APP_INSTANCE_ID", QUserProperties.FirebaseAppInstanceId); |
| 63 | + }}; |
| 64 | + |
| 65 | + private static final HashMap<String, QPermissionsCacheLifetime> cacheLifetimeMap = new HashMap<String, QPermissionsCacheLifetime>() {{ |
| 66 | + put("WEEK", QPermissionsCacheLifetime.WEEK); |
| 67 | + put("TWO_WEEKS", QPermissionsCacheLifetime.TWO_WEEKS); |
| 68 | + put("MONTH", QPermissionsCacheLifetime.MONTH); |
| 69 | + put("TWO_MONTHS", QPermissionsCacheLifetime.TWO_MONTHS); |
| 70 | + put("THREE_MONTHS", QPermissionsCacheLifetime.THREE_MONTHS); |
| 71 | + put("SIX_MONTHS", QPermissionsCacheLifetime.SIX_MONTHS); |
| 72 | + put("YEAR", QPermissionsCacheLifetime.YEAR); |
| 73 | + put("UNLIMITED", QPermissionsCacheLifetime.UNLIMITED); |
61 | 74 | }}; |
62 | 75 |
|
63 | 76 | private DeviceEventManagerModule.RCTDeviceEventEmitter eventEmitter = null; |
@@ -477,6 +490,15 @@ public void onPermissionsUpdate(@NonNull Map<String, QPermission> map) { |
477 | 490 | }); |
478 | 491 | } |
479 | 492 |
|
| 493 | + @ReactMethod |
| 494 | + public void setPermissionsCacheLifetime(final String lifetime) { |
| 495 | + QPermissionsCacheLifetime cacheLifetime = cacheLifetimeMap.get(lifetime); |
| 496 | + |
| 497 | + if (cacheLifetime != null) { |
| 498 | + Qonversion.setPermissionsCacheLifetime(cacheLifetime); |
| 499 | + } |
| 500 | + } |
| 501 | + |
480 | 502 | private void rejectWithError(@NonNull QonversionError qonversionError, final Promise promise) { |
481 | 503 | String errorMessage = qonversionError.getDescription() + "\n" + qonversionError.getAdditionalMessage(); |
482 | 504 | promise.reject(qonversionError.getCode().toString(), errorMessage); |
|
0 commit comments