GithubHelp home page GithubHelp logo

refiner-io / mobile-sdk-flutter Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 165 KB

Home Page: https://refiner.io

License: Apache License 2.0

Java 29.21% Ruby 9.54% Swift 19.76% Objective-C 0.14% Dart 41.36%
flutter flutter-app in-app-survey in-product microsurveys survey surveys

mobile-sdk-flutter's Introduction

Refiner Flutter SDK

1) Installation

  • To use this plugin, add refiner_flutter as a dependency in your pubspec.yaml file.

    Pub Version (including pre-releases)

dependencies:
  refiner_flutter: ^[version]

iOS

  • Run command pod install in your ios directory

2) Usage

Visit our documentation for more information about how to use the SDK methods.

Initialization & Configuration

Initialize the SDK in your application with the needed configuration parameters.

The second parameter is for activating a debug mode during development. If activated, the SDK will log all interactions with the Refiner backend servers.

import 'package:refiner_flutter/refiner_flutter.dart';

await Refiner.initialize(projectId: 'PROJECT_ID', debugMode: false);

Identify User

Call Identify User to create or update user traits in Refiner.

The first parameter is the userId of your logged-in user and is the only mandatory parameter.

The second parameter is an object of user traits. You can provide an empty object if you don't want to send any user traits to your Refiner account.

var userTraits = {
  'email': '[email protected]',
  'a_number': 123,
  'a_date': '2022-16-04 12:00:00'
};

await Refiner.identifyUser(userId: 'my-user-id', userTraits: userTraits);

The third parameter is for setting the locale of a user and is optional. The expected format is a two letter ISO 639-1 language code. When provided, the locale code is used for launching surveys for specific languages, as well as launching translated sureys. You can set the value to null if you are not using any language specific features.

The fourth parameter is an optional Identity Verification signature. We recommend to use a Identify Verification signature for increased security in a production environment. For development purposes, you can set this value to null.

var userTraits = {
  'email': '[email protected]',
  'a_number': 123,
  'a_date': '2022-16-04 12:00:00'
};

awaitRefiner.identifyUser(userId: 'my-user-id',userTraits: userTraits,locale: 'LOCALE',signature: 'SIGNATURE');

Track Event

Track Event lets you track user events. Tracked events can be used to create user segments and target audiences in Refiner.

await Refiner.trackEvent('EVENT_NAME');

Track Screen

Track Screen lets you to track screen that user is currently on. Screen information can be used to launch surveys in specific areas of your app.

We recommend to track screens on which you might want to show a survey one day. There is no need to systematically track all screens of your app.

await Refiner.trackScreen('SCREEN_NAME');

Ping

Depending on your setup, you might want to initiate regular checks for surveys that are scheduled for the current user. For example when you are using time based trigger events, or when a target audience is based on user data received by our backend API.

The Ping method provides an easy way to perform such checks. You can call the Ping method at key moments in a user's journey, such as when the app is re-opened, or when the user performs a specific action.

await Refiner.ping();

Show Form

If you use the Manual Trigger Event for your survey, you need to call Show Form whenever you want to launch the survey.

await Refiner.showForm('FORM_UUID');

The second parameter is a boolean value to force the display of the survey and bypass all targeting rules which were set in the Refiner dashboard. Setting the parameter to true can be helpful when testing the SDK. In production, the parameter should be set to false.

await Refiner.showForm('FORM_UUID', force: true);

Attach Contextual Data

Attach contextual data to the survey submissions with addToResponse. Set null to remove the contextual data.

var contextualData = { 'some_data': 'hello', 'some_more_data': 'hello again'};
await Refiner.addToResponse(contextualData);

Start user session

A new user session is automatically detected when a user returns to your application after at least one hour of inactivity. You can choose to manually start a new user session with the method shown below. You can call this method for example right after a user opens your app.

await Refiner.startSession();

Reset User

Call Reset User to reset the user identifier previously set through Identify User. We recommend calling this method when the user logs out from your app.

await Refiner.resetUser();

Set Project

Change the environment UUID during runtime, after the SDK has been initialised.

await Refiner.setProject('PROJECT_ID');

Close Surveys

Close a survey programmatically without sending any information to the backend API with the closeForm method.

await Refiner.closeForm('FORM_UUID');

Close a survey programmatically and send a "dismissed at" timestamp to the backend server with the dismissForm method.

await Refiner.dismissForm('FORM_UUID');

Register callback functions

Registering callback functions allows you to execute any code at specific moments in the lifecycle of a survey. A popular use-case for callback functions is to redirect a user to a new screen once they completed a survey.

onBeforeShow gets called right before a survey is supposed to be shown.

Refiner.addListener("onBeforeShow", (value) {
    print("***onBeforeShow***");
    print(value);
});

onNavigation gets called when the user moves through the survey

Refiner.addListener("onNavigation", (value) {
    print("***onNavigation***");
    print(value);
});

onShow gets called when a survey widget becomes visible to your user.

Refiner.addListener("onShow", (value) {
    print("***onShow***");
    print(value);
});

onClose gets called when the survey widgets disappears from the screen.

Refiner.addListener("onClose", (value) {
    print("***onClose***");
    print(value);
});  

onDismiss gets called when the user dismissed a survey by clicking on the “x” in the top right corner.

Refiner.addListener("onDismiss", (value) {
    print("***onDismiss***");
    print(value);
}); 

onComplete gets called when the user completed (submitted) a survey.

Refiner.addListener('onComplete', (args) {
    print('onComplete');
    print(value);
});   

mobile-sdk-flutter's People

Contributors

chezmo avatar maliaydemir avatar tekinalper avatar

Stargazers

 avatar

Watchers

 avatar  avatar

mobile-sdk-flutter's Issues

Your project's Gradle version is incompatible with the Java version that Flutter is using for Gradle.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':refiner_flutter:dataBindingMergeDependencyArtifactsDebug'.
> Could not resolve all files for configuration ':refiner_flutter:debugCompileClasspath'.
   > Failed to transform refiner-1.3.0-rc5.aar (io.refiner:refiner:1.3.0-rc5) to match attributes {artifactType=android-databinding, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-api}.
      > Execution failed for JetifyTransform: C:\Users\KleytonNishide\.gradle\caches\modules-2\files-2.1\io.refiner\refiner\1.3.0-rc5\37be10165105d31d7d6c2e367be090ee7e09c920\refiner-1.3.0-rc5.aar.
         > Failed to transform 'C:\Users\KleytonNishide\.gradle\caches\modules-2\files-2.1\io.refiner\refiner\1.3.0-rc5\37be10165105d31d7d6c2e367be090ee7e09c920\refiner-1.3.0-rc5.aar' using Jetifier. Reason: IllegalArgumentException, message: Unsupported class file major version 61. (Run with --stacktrace for more details.)
           Suggestions:
            - Check out existing issues at https://issuetracker.google.com/issues?q=componentid:460323&s=modified_time:desc, it's possible that this issue has already been filed there.
            - If this issue has not been filed, please report it at https://issuetracker.google.com/issues/new?component=460323 (run with --stacktrace and provide a stack trace if possible).
   > Failed to transform activity-1.8.0.aar (androidx.activity:activity:1.8.0) to match attributes {artifactType=android-databinding, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.status=release, org.gradle.usage=java-api}.
      > Execution failed for JetifyTransform: C:\Users\KleytonNishide\.gradle\caches\modules-2\files-2.1\androidx.activity\activity\1.8.0\4266e2118d565daa20212d1726e11f41e1a4d0ca\activity-1.8.0.aar.
         > Failed to transform 'C:\Users\KleytonNishide\.gradle\caches\modules-2\files-2.1\androidx.activity\activity\1.8.0\4266e2118d565daa20212d1726e11f41e1a4d0ca\activity-1.8.0.aar' using Jetifier. Reason: IllegalArgumentException, message: Unsupported class file major version 61. (Run with --stacktrace for more details.)
           Suggestions:
            - Check out existing issues at https://issuetracker.google.com/issues?q=componentid:460323&s=modified_time:desc, it's possible that this issue has already been filed there.
            - If this issue has not been filed, please report it at https://issuetracker.google.com/issues/new?component=460323 (run with --stacktrace and provide a stack trace if possible).

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 45s

┌─ Flutter Fix ────────────────────────────────────────────────────────────────────────────────────┐
│ [!] Your project's Gradle version is incompatible with the Java version that Flutter is using    │
│ for Gradle.                                                                                      │
│                                                                                                  │
│ To fix this issue, first, check the Java version used by Flutter by running `flutter doctor      │
│ --verbose`.                                                                                      │
│                                                                                                  │
│ Then, update the Gradle version specified in                                                     │
│ C:\Users\KleytonNishide\source\repos\StudentEdgeApp\android\gradle\wrapper\gradle-wrapper.proper │
│ ties to be compatible with that Java version. See the link below for more information on         │
│ compatible Java/Gradle versions:                                                                 │
│ https://docs.gradle.org/current/userguide/compatibility.html#java                                │
2
│                                                                                                  │
└──────────────────────────────────────────────────────────────────────────────────────────────────┘
Exception: Gradle task assembleStagingDebug failed with exit code 1
$ flutter doctor -v
[√] Flutter (Channel stable, 3.10.5, on Microsoft Windows [Version 10.0.19045.3570], locale en-AU)
    • Flutter version 3.10.5 on channel stable at C:\Users\KleytonNishide\fvm\versions\3.10.5
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 796c8ef792 (5 months ago), 2023-06-13 15:51:02 -0700
    • Engine revision 45f6e00911
    • Dart version 3.0.5
    • DevTools version 2.23.1

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at C:\Users\KleytonNishide\AppData\Local\Android\Sdk
    • Platform android-33, build-tools 33.0.0
    • ANDROID_HOME = C:\Users\KleytonNishide\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jbr\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Enterprise 2022 17.5.3)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Enterprise
    • Visual Studio Enterprise 2022 version 17.5.33516.290
    • Windows 10 SDK version 10.0.22000.0

[√] Android Studio (version 2022.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-9505619)

[√] VS Code (version 1.83.1)
    • VS Code at C:\Users\KleytonNishide\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.74.0

[√] Connected device (4 available)
    • sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 13 (API 33) (emulator)
    • Windows (desktop)            • windows       • windows-x64    • Microsoft Windows [Version 10.0.19045.3570]
    • Chrome (web)                 • chrome        • web-javascript • Google Chrome 118.0.5993.89
    • Edge (web)                   • edge          • web-javascript • Microsoft Edge 114.0.1823.82

[√] Network resources
    • All expected network resources are available.

• No issues found!
$ ./gradlew --version

------------------------------------------------------------
Gradle 7.3
------------------------------------------------------------

Build time:   2021-11-09 20:40:36 UTC
Revision:     96754b8c44399658178a768ac764d727c2addb37

Kotlin:       1.5.31
Groovy:       3.0.9
Ant:          Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM:          18.0.2.1 (Oracle Corporation 18.0.2.1+1-1)
OS:           Windows 10 10.0 amd64
$ java -version
openjdk version "11.0.16.1" 2022-08-12 LTS
OpenJDK Runtime Environment Microsoft-40648 (build 11.0.16.1+1-LTS)
OpenJDK 64-Bit Server VM Microsoft-40648 (build 11.0.16.1+1-LTS, mixed mode)

Fatal Exception: java.lang.RuntimeException - Caused by kotlin.UninitializedPropertyAccessException

I got Fatal Exception:

      Caused by kotlin.UninitializedPropertyAccessException: lateinit property koinApp has not been initialized
       at io.refiner.shared.LibKoinContext.getKoinApp(Koin.kt:27)
       at io.refiner.ui.q.invoke(SourceFile:1)
       at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
       at io.refiner.ui.RefinerSurveyFragment.getViewModel(SourceFile:1)
       at io.refiner.ui.RefinerSurveyFragment.onCreate(SourceFile:11)
       at androidx.fragment.app.Fragment.performCreate(Fragment.java:3090)
       at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:475)
       at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
       at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:113)
       at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1433)
       at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2977)
       at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2884)
       at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:252)
       at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:220)
       at io.refiner.ui.RefinerSurveyActivity.onCreate(SourceFile:1)
       at android.app.Activity.performCreate(Activity.java:8591)
       at android.app.Activity.performCreate(Activity.java:8570)
       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1384)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4150)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4325)
       at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
       at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2574)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loopOnce(Looper.java:226)
       at android.os.Looper.loop(Looper.java:313)
       at android.app.ActivityThread.main(ActivityThread.java:8762)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:604)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)

version: 1.3.6
Device: Galaxy S21 FE 5G

Error iOS build

I am getting the following error when trying to build our app on Azure Pipelines:

             ld: warning: Could not find or use auto-linked library 'swiftXPC': library 'swiftXPC' not found
             ld: warning: Could not find or use auto-linked framework 'CoreAudioTypes': framework 'CoreAudioTypes' not found
             ld: Undefined symbols:
               __swift_FORCE_LOAD_$_swiftXPC, referenced from:
                   __swift_FORCE_LOAD_$_swiftXPC_$_RefinerSDK in RefinerSDK[3](StartKMM.o)
             clang: error: linker command failed with exit code 1 (use -v to see invocation)

[iOS] Crash when resetUser is called

Hey 👋🏻

Flutter doctor output

fvm flutter doctor -v
[✓] Flutter (Channel stable, 3.13.5, on macOS 14.0 23A344 darwin-arm64, locale en-GE)
    • Flutter version 3.13.5 on channel stable at /Users/kuznetsov.one/fvm/versions/3.13.5
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 12fccda598 (8 weeks ago), 2023-09-19 13:56:11 -0700
    • Engine revision bd986c5ed2
    • Dart version 3.1.2
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
    • Android SDK at /Users/kuznetsov.one/Library/Android/sdk
    • Platform android-34, build-tools 33.0.1
    • ANDROID_HOME = /Users/kuznetsov.one/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A507
    • CocoaPods version 1.13.0

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] VS Code (version 1.81.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.76.0

[✓] Connected device (2 available)
    • iPhone 15 Pro Max (mobile) • 1BDF2997-3334-48DB-AE50-45A157AFEBF2 • ios          • com.apple.CoreSimulator.SimRuntime.iOS-17-0 (simulator)
    • macOS (desktop)            • macos                                • darwin-arm64 • macOS 14.0 23A344 darwin-arm64

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Versions
CleanShot 2023-11-16 at 11 03 47@2x

Crash report
CleanShot 2023-11-16 at 11 00 57@2x

-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Incident Identifier: 866C2CBE-24EC-4ECE-9928-451FFDE043B4
CrashReporter Key:   FB9022BF-A0FA-6F36-F384-62B9F7D3B6D8
Hardware Model:      MacBookPro18,1
Process:             Runner [13733]
Path:                /Users/USER/Library/Developer/CoreSimulator/Devices/1BDF2997-3334-48DB-AE50-45A157AFEBF2/data/Containers/Bundle/Application/DE47849C-FCBA-4234-AB69-125B8ECC2C1A/Runner.app/Runner
Identifier:          app.tabby.merchant.dev
Version:             2.1.7 (144)
Code Type:           X86-64 (Native)
Role:                Foreground
Parent Process:      launchd_sim [4128]
Coalition:           com.apple.CoreSimulator.SimDevice.1BDF2997-3334-48DB-AE50-45A157AFEBF2 [29385]
Responsible Process: SimulatorTrampoline [1366]

Date/Time:           2023-11-16 10:59:19.8735 +0400
Launch Time:         2023-11-16 10:56:35.5328 +0400
OS Version:          macOS 14.0 (23A344)
Release Type:        User
Report Version:      104

Exception Type:  EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes: 0x0000000000000001, 0x0000000000000000
Termination Reason: SIGNAL 4 Illegal instruction: 4
Terminating Process: exc handler [13733]

Triggered by Thread:  0

Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   ???                           	       0x10803e748 ???
1   Runner                        	       0x1030da54e specialized RefinerFlutterPlugin.handle(_:result:) + 14 [inlined]
2   Runner                        	       0x1030da54e @objc RefinerFlutterPlugin.handle(_:result:) + 78 (<compiler-generated>:15)
3   Flutter                       	       0x11f3329bd __45-[FlutterMethodChannel setMethodCallHandler:]_block_invoke + 168
4   Flutter                       	       0x11ecf4f52 invocation function for block in flutter::PlatformMessageHandlerIos::HandlePlatformMessage(std::_LIBCPP_ABI_NAMESPACE::unique_ptr<flutter::PlatformMessage, std::_LIBCPP_ABI_NAMESPACE::default_delete<flutter::PlatformMessage>>) + 94
5   libdispatch.dylib             	       0x1119eea90 _dispatch_call_block_and_release + 12
6   libdispatch.dylib             	       0x1119efd3a _dispatch_client_callout + 8
7   libdispatch.dylib             	       0x1119feac0 _dispatch_main_queue_drain + 1420
8   libdispatch.dylib             	       0x1119fe526 _dispatch_main_queue_callback_4CF + 31
9   CoreFoundation                	       0x112c31850 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9
10  CoreFoundation                	       0x112c2c18b __CFRunLoopRun + 2463
11  CoreFoundation                	       0x112c2b409 CFRunLoopRunSpecific + 557
12  GraphicsServices              	       0x118201187 GSEventRunModal + 137
13  UIKitCore                     	       0x1344b93a2 -[UIApplication _run] + 972
14  UIKitCore                     	       0x1344bde10 UIApplicationMain + 123
15  Runner                        	       0x102b0a46f main + 63 (AppDelegate.swift:5)
16  dyld_sim                      	       0x10bf023ee start_sim + 10
17  dyld                          	       0x20360c3a6 start + 1942

Thread 1:: com.apple.rosetta.exceptionserver
0   ???                           	    0x7ff7ffe492b4 ???

Thread 2:: GC Timer thread
0   ???                           	       0x1035efa78 ???
1   ???                           	       0x1039a477c ???
2   libsystem_pthread.dylib       	       0x1128c576b _pthread_cond_wait + 1211
3   libc++.1.dylib                	       0x10cae806b std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l>>>) + 93
4   RefinerInternalSDK            	       0x110ebd6d1 void kotlin::RepeatedTimer<kotlin::steady_clock>::Run<kotlin::gcScheduler::internal::GCSchedulerDataAdaptive<kotlin::steady_clock>::GCSchedulerDataAdaptive(kotlin::gcScheduler::GCSchedulerConfig&, std::__1::function<long long ()>)::'lambda'()>(kotlin::gcScheduler::internal::GCSchedulerDataAdaptive<kotlin::steady_clock>::GCSchedulerDataAdaptive(kotlin::gcScheduler::GCSchedulerConfig&, std::__1::function<long long ()>)::'lambda'()&&) + 241
5   RefinerInternalSDK            	       0x110ebd96f void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(kotlin::ScopedThread::attributes, void (kotlin::RepeatedTimer<kotlin::steady_clock>::*&&)(kotlin::gcScheduler::internal::GCSchedulerDataAdaptive<kotlin::steady_clock>::GCSchedulerDataAdaptive(kotlin::gcScheduler::GCSchedulerConfig&, std::__1::function<long long ()>)::'lambda'()&&) noexcept, kotlin::RepeatedTimer<kotlin::steady_clock>*&&, kotlin::gcScheduler::internal::GCSchedulerDataAdaptive<kotlin::steady_clock>::GCSchedulerDataAdaptive(kotlin::gcScheduler::GCSchedulerConfig&, std::__1::function<long long ()>)::'lambda'()&&), kotlin::ScopedThread::attributes, void (kotlin::RepeatedTimer<kotlin::steady_clock>::*)(kotlin::gcScheduler::internal::GCSchedulerDataAdaptive<kotlin::steady_clock>::GCSchedulerDataAdaptive(kotlin::gcScheduler::GCSchedulerConfig&, std::__1::function<long long ()>)::'lambda'()&&) noexcept, kotlin::RepeatedTimer<kotlin::steady_clock>*, kotlin::gcScheduler::internal::GCSchedulerDataAdaptive<kotlin::steady_clock>::GCSchedulerDataAdaptive(kotlin::gcScheduler::GCSchedulerConfig&, std::__1::function<long long ()>)::'lambda'()>>(void*) + 127
6   libsystem_pthread.dylib       	       0x1128c5202 _pthread_start + 99
7   libsystem_pthread.dylib       	       0x1128c0bab thread_start + 15

Thread 3:: Main GC thread
0   ???                           	       0x1035efa78 ???
1   ???                           	       0x1039a477c ???
2   libsystem_pthread.dylib       	       0x1128c576b _pthread_cond_wait + 1211
3   libc++.1.dylib                	       0x10cae7fe2 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
4   RefinerInternalSDK            	       0x110ec156b std::__1::invoke_result<kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1>::type kotlin::ScopedThread::Run<kotlin::ScopedThread (anonymous namespace)::createGCThread<kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1>(char const*, kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1&&)::'lambda'()>(kotlin::ScopedThread::attributes, kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1&&) + 459
5   RefinerInternalSDK            	       0x110ec39e7 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(kotlin::ScopedThread::attributes, kotlin::ScopedThread (anonymous namespace)::createGCThread<kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1>(char const*, kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1&&)::'lambda'()&&), kotlin::ScopedThread::attributes, kotlin::ScopedThread (anonymous namespace)::createGCThread<kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1>(char const*, kotlin::gc::ConcurrentMarkAndSweep::ConcurrentMarkAndSweep(kotlin::gcScheduler::GCScheduler&, bool, unsigned long)::$_1&&)::'lambda'()>>(void*) + 119
6   libsystem_pthread.dylib       	       0x1128c5202 _pthread_start + 99
7   libsystem_pthread.dylib       	       0x1128c0bab thread_start + 15

...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.