Skip to content

Commit

Permalink
Merge pull request #51 from qonversion/release/2.4.6
Browse files Browse the repository at this point in the history
Release/2.4.6
  • Loading branch information
suriksarkisyan authored May 7, 2021
2 parents 4d8c982 + 0072e14 commit ffcfbc9
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 2 deletions.
2 changes: 1 addition & 1 deletion android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ repositories {
dependencies {
//noinspection GradleDynamicVersion
implementation 'com.facebook.react:react-native:+' // From node_modules
implementation "com.qonversion.android.sdk:sdk:2.7.3"
implementation "com.qonversion.android.sdk:sdk:2.7.6"
}

def configureReactNativePom(def pom) {
Expand Down
11 changes: 11 additions & 0 deletions android/src/main/java/com/reactlibrary/QonversionModule.java
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.NotNull;

import android.content.SharedPreferences;
import androidx.preference.PreferenceManager;

public class QonversionModule extends ReactContextBaseJavaModule {

private final ReactApplicationContext reactContext;
Expand All @@ -61,6 +64,14 @@ public String getName() {
return "RNQonversion";
}

@ReactMethod
public void storeSDKInfo(String sourceKey, String source, String sdkVersionKey, String sdkVersion) {
SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(getCurrentActivity().getApplication()).edit();
editor.putString(sdkVersionKey, sdkVersion);
editor.putString(sourceKey, source);
editor.apply();
}

@ReactMethod
public void launchWithKey(String key, Boolean observeMode, final Promise promise) {
Qonversion.launch(getCurrentActivity().getApplication(), key, observeMode, new QonversionLaunchCallback()
Expand Down
7 changes: 7 additions & 0 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,16 @@ import { NativeModules, Platform } from 'react-native';

const { RNQonversion } = NativeModules;

const keyPrefix = 'com.qonversion.keys';
const sourceKey = keyPrefix + '.source';
const versionKey = keyPrefix + '.sourceVersion';
const sdkVersion = '2.4.6';

export default class Qonversion {

static async launchWithKey(key: string, observerMode: Boolean = false): Promise<LaunchResult> {
RNQonversion.storeSDKInfo(sourceKey, 'rn', versionKey, sdkVersion);

const response: Object = await RNQonversion.launchWithKey(key, observerMode);
const launchResult: LaunchResult = Mapper.convertLaunchResult(response);

Expand Down
6 changes: 6 additions & 0 deletions ios/RNQonversion.m
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ @implementation RNQonversion

RCT_EXPORT_MODULE();

RCT_EXPORT_METHOD(storeSDKInfo:(NSString *)sourceKey source:(NSString *)source versionKey:(NSString *)versionKey version:(NSString *)version) {
[[NSUserDefaults standardUserDefaults] setValue:version forKey:versionKey];
[[NSUserDefaults standardUserDefaults] setValue:source forKey:sourceKey];
}


RCT_EXPORT_METHOD(launchWithKey:(NSString *)key observerMode:(BOOL)observerMode completion:(RCTResponseSenderBlock)completion rejecter:(RCTPromiseRejectBlock)reject)
{
[Qonversion launchWithKey:key completion:^(QNLaunchResult *result, NSError *error) {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "react-native-qonversion",
"title": "React Native Qonversion",
"version": "2.4.5",
"version": "2.4.6",
"description": "Qonversion provides full in-app purchases infrastructure, so you do not need to build your own server for receipt validation. Implement in-app subscriptions, validate user receipts, check subscription status, and provide access to your app features and content using our StoreKit wrapper and Google Play Billing wrapper.",
"main": "index.js",
"scripts": {
Expand Down

0 comments on commit ffcfbc9

Please sign in to comment.