React-native-onesignal: (Android) E / onesignal: Não é possível inicializar o OneSignal SDK porque a atividade é null true ou oneSignalInitDonefalse

Criado em 19 mai. 2018  ·  30Comentários  ·  Fonte: OneSignal/react-native-onesignal

Olá!
"reagir-nativo": "0.55.3",
"react-native-onesignal": "^ 3.2.3",

app.js

componentWillMount() {
    OneSignal.init('bddacd3f-7812-4a29-b038-.................');
    OneSignal.addEventListener('received', this.onReceived);
    OneSignal.addEventListener('opened', this.onOpened);
    OneSignal.addEventListener('ids', this.onIds);
}



onReceived(notification) {
        console.log("Notification received: ", notification);
    }

    onOpened(openResult) {
      console.log('Message: ', openResult.notification.payload.body);
      console.log('Data: ', openResult.notification.payload.additionalData);
      console.log('isActive: ', openResult.notification.isAppInFocus);
      console.log('openResult: ', openResult);
    }



    onIds(device) {
        console.log('Device info: ', device);
   }
  1. trabalhar em iOS

  2. não funciona no Android

Comentários muito úteis

Resolvi usando apenas react-native-onesignal:3.1.4 . Ele inicializa usando:

defaultConfig {
        applicationId "APP_ID"
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }

        manifestPlaceholders = [onesignal_app_id: "YOUR_ONESIGNAL_ID",
                                onesignal_google_project_number: "REMOTE"]
    }

e é isso. Muito mais simples do que fazê-lo do lado do JS se você estiver usando a navegação reativa-nativa.

Todos 30 comentários

1

@aspidvip pode fornecer mais alguns detalhes? Este erro lança uma exceção e falha, ou simplesmente não funciona (sem identificação de jogador, incapaz de receber notificações push, etc)? Quais são os sintomas?

Eu tive esse problema também. Acho que é por causa da navegação reativa-nativa. Ele inicia outra atividade logo após o lançamento do aplicativo. Se você chamar OneSignal.init() nesse meio tempo, isso dirá que a atividade é nula - o erro que você tem.

Se você esperar alguns segundos antes de chamar OneSignal.init() ele funcionará, mas ocorrerá outro erro. Aquele com FirebaseApp não inicializado. Edição nº 515. Esperando por uma correção ou solução alternativa para isso também ...

Resolvi usando apenas react-native-onesignal:3.1.4 . Ele inicializa usando:

defaultConfig {
        applicationId "APP_ID"
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }

        manifestPlaceholders = [onesignal_app_id: "YOUR_ONESIGNAL_ID",
                                onesignal_google_project_number: "REMOTE"]
    }

e é isso. Muito mais simples do que fazê-lo do lado do JS se você estiver usando a navegação reativa-nativa.

sem identificação de jogador, incapaz de receber notificações push!

@urbancvek Essa mesma técnica de inicialização (usando AppDelegate para iOS e gradle para Android) também funciona em 3.2.3

@aspidvip Esse é um problema muito amplo, pode ser qualquer coisa. Isso provavelmente é um problema com a navegação reativa-nativa e o tempo de inicialização do OneSignal

eu fiz

componentDidMount(){
    setTimeout(()=>{
      OneSignal.init('bddacd3f-7812-4a29-b038-ebf844c9826d');
    },5000);
}

E/OneSignal: The included Android Support Library is to old or incomplete. Please update to the 26.0.0 revision or newer.
D/FirebaseApp: com.google.firebase.auth.FirebaseAuth is not linked. Skipping initialization.
I/zygote: Rejecting re-init on previously-failed class java.lang.Class<com.onesignal.OneSignalChromeTab$OneSignalCustomTabsServiceConnection>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/customtabs/CustomTabsServiceConnection;
I/zygote:     at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
I/zygote:     at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
I/zygote:     at void java.lang.Thread.run() (Thread.java:764)
I/zygote: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.customtabs.CustomTabsServiceConnection" on path: DexPathList[[zip file "/data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/base.apk"],nativeLibraryDirectories=[/data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/lib/x86, /data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/base.apk!/lib/x86, /system/lib, /vendor/lib]]
I/zygote:     at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:93)
I/zygote:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
I/zygote:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
I/zygote:     at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
I/zygote:     at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
I/zygote:     at void java.lang.Thread.run() (Thread.java:764)
I/zygote: Rejecting re-init on previously-failed class java.lang.Class<com.onesignal.OneSignalChromeTab$OneSignalCustomTabsServiceConnection>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/customtabs/CustomTabsServiceConnection;
I/zygote:     at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
I/zygote:     at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
I/zygote:     at void java.lang.Thread.run() (Thread.java:764)
I/zygote: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.customtabs.CustomTabsServiceConnection" on path: DexPathList[[zip file "/data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/base.apk"],nativeLibraryDirectories=[/data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/lib/x86, /data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/base.apk!/lib/x86, /system/lib, /vendor/lib]]
I/zygote:     at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:93)
I/zygote:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
I/zygote:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
I/zygote:     at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
I/zygote:     at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
I/zygote:     at void java.lang.Thread.run() (Thread.java:764)
I/zygote: Rejecting re-init on previously-failed class java.lang.Class<com.onesignal.OneSignalChromeTab$OneSignalCustomTabsServiceConnection>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/customtabs/CustomTabsServiceConnection;
I/zygote:     at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
I/zygote:     at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
I/zygote:     at void java.lang.Thread.run() (Thread.java:764)
I/zygote: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.customtabs.CustomTabsServiceConnection" on path: DexPathList[[zip file "/data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/base.apk"],nativeLibraryDirectories=[/data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/lib/x86, /data/app/com.publikun-tQvVeGt0XjzJehSUmUpCQw==/base.apk!/lib/x86, /system/lib, /vendor/lib]]
I/zygote:     at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:93)
I/zygote:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
I/zygote:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
I/zygote:     at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
I/zygote:     at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
I/zygote:     at void java.lang.Thread.run() (Thread.java:764)

1

mas sem nenhuma identificação de jogador, incapaz de receber notificações push!

@aspidvip você pode postar seu build.gradle ? Isso seria um problema de dependência com certeza.

Além disso, você pode tentar acessar o arquivo react-native-onesignal/build.gradle e atualizar o SDK do Android OneSignal para 3.9.1

plugins {
        id 'com.onesignal.androidsdk.onesignal-gradle-plugin' version '0.8.1'
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'


apply plugin: "com.android.application"
import com.android.build.OutputFile

/**
 * The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets
 * and bundleReleaseJsAndAssets).
 * These basically call `react-native bundle` with the correct arguments during the Android build
 * cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the
 * bundle directly from the development server. Below you can see all the possible configurations
 * and their defaults. If you decide to add a configuration block, make sure to add it before the
 * `apply from: "../../node_modules/react-native/react.gradle"` line.
 *
 * project.ext.react = [
 *   // the name of the generated asset file containing your JS bundle
 *   bundleAssetName: "index.android.bundle",
 *
 *   // the entry file for bundle generation
 *   entryFile: "index.android.js",
 *
 *   // whether to bundle JS and assets in debug mode
 *   bundleInDebug: false,
 *
 *   // whether to bundle JS and assets in release mode
 *   bundleInRelease: true,
 *
 *   // whether to bundle JS and assets in another build variant (if configured).
 *   // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants
 *   // The configuration property can be in the following formats
 *   //         'bundleIn${productFlavor}${buildType}'
 *   //         'bundleIn${buildType}'
 *   // bundleInFreeDebug: true,
 *   // bundleInPaidRelease: true,
 *   // bundleInBeta: true,
 *
 *   // whether to disable dev mode in custom build variants (by default only disabled in release)
 *   // for example: to disable dev mode in the staging build type (if configured)
 *   devDisabledInStaging: true,
 *   // The configuration property can be in the following formats
 *   //         'devDisabledIn${productFlavor}${buildType}'
 *   //         'devDisabledIn${buildType}'
 *
 *   // the root of your project, i.e. where "package.json" lives
 *   root: "../../",
 *
 *   // where to put the JS bundle asset in debug mode
 *   jsBundleDirDebug: "$buildDir/intermediates/assets/debug",
 *
 *   // where to put the JS bundle asset in release mode
 *   jsBundleDirRelease: "$buildDir/intermediates/assets/release",
 *
 *   // where to put drawable resources / React Native assets, e.g. the ones you use via
 *   // require('./image.png')), in debug mode
 *   resourcesDirDebug: "$buildDir/intermediates/res/merged/debug",
 *
 *   // where to put drawable resources / React Native assets, e.g. the ones you use via
 *   // require('./image.png')), in release mode
 *   resourcesDirRelease: "$buildDir/intermediates/res/merged/release",
 *
 *   // by default the gradle tasks are skipped if none of the JS files or assets change; this means
 *   // that we don't look at files in android/ or ios/ to determine whether the tasks are up to
 *   // date; if you have any other folders that you want to ignore for performance reasons (gradle
 *   // indexes the entire tree), add them here. Alternatively, if you have JS files in android/
 *   // for example, you might want to remove it from here.
 *   inputExcludes: ["android/**", "ios/**"],
 *
 *   // override which node gets called and with what additional arguments
 *   nodeExecutableAndArgs: ["node"],
 *
 *   // supply additional arguments to the packager
 *   extraPackagerArgs: []
 * ]
 */

project.ext.vectoricons = [
        iconFontNames: [ 'MaterialIcons.ttf', 'EvilIcons.ttf', 'MaterialCommunityIcons.ttf', 'Ionicons.ttf' ] // Name of the font files you want to copy
]

apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"





apply plugin: 'com.android.application'


project.ext.react = [
    entryFile: "index.js"
]

apply from: "../../node_modules/react-native/react.gradle"

/**
 * Set this to true to create two separate APKs instead of one:
 *   - An APK that only works on ARM devices
 *   - An APK that only works on x86 devices
 * The advantage is the size of the APK is reduced by about 4MB.
 * Upload all the APKs to the Play Store and people will download
 * the correct one based on the CPU architecture of their device.
 */
def enableSeparateBuildPerCPUArchitecture = true

/**
 * Run Proguard to shrink the Java bytecode in release builds.
 */
def enableProguardInReleaseBuilds = false

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"

    defaultConfig {
        applicationId "com.nameproject"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        vectorDrawables.useSupportLibrary = true 
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }
        /*manifestPlaceholders = [onesignal_app_id: "bddacd3f-7812-4a29-b038-ebf844c9826d",
                                onesignal_google_project_number: "712648705913"]*/
        manifestPlaceholders = [onesignal_app_id: "bddacd3f-7812-4a29-b038-ebf844c9826d",
                                onesignal_google_project_number: "712648705914"]
    }
    signingConfigs {
        release {
            if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
                storeFile file(MYAPP_RELEASE_STORE_FILE)
                storePassword MYAPP_RELEASE_STORE_PASSWORD
                keyAlias MYAPP_RELEASE_KEY_ALIAS
                keyPassword MYAPP_RELEASE_KEY_PASSWORD
            }
        }
    }
    splits {
        abi {
            reset()
            enable enableSeparateBuildPerCPUArchitecture
            universalApk true  // If true, also generate a universal APK
            include "armeabi-v7a", "x86"
        }
    }
    buildTypes {
        release {
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
            signingConfig signingConfigs.release
        }
    }
    // applicationVariants are e.g. debug, release
    applicationVariants.all { variant ->
        variant.outputs.each { output ->
            // For each separate APK per architecture, set a unique version code as described here:
            // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
            def versionCodes = ["armeabi-v7a":1, "x86":2]
            def abi = output.getFilter(OutputFile.ABI)
            if (abi != null) {  // null for the universal-debug, universal-release variants
                output.versionCodeOverride =
                        versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
            }
        }
    }
}

dependencies {
    compile project(':react-native-onesignal')
    compile project(':react-native-contacts')
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile "com.android.support:appcompat-v7:23.0.1"
    compile "com.facebook.react:react-native:+"  // From node_modules
    compile project(':react-native-navigation')
    compile project(':react-native-vector-icons')
    compile project(':react-native-fetch-blob')
    compile project(':react-native-photo-view')
    compile project(':react-native-i18n')
    compile project(':react-native-sqlite-storage')
    compile project(':react-native-linear-gradient')
    compile project(':react-native-image-crop-picker')
    compile project(':react-native-sound')
    compile project(':react-native-open-settings')

}

// Run this once to be able to run the application with BUCK
// puts all compile dependencies into folder libs for BUCK to use
task copyDownloadableDepsToLibs(type: Copy) {
    from configurations.compile
    into 'libs'
}

@aspidvip Isso significa que o nível da API Android em react-native-onesignal/build.gradle e em app/build.gradle provavelmente não correspondem. Eu sugeriria alterar o nível de API do seu aplicativo para:

    compileSdkVersion 23
    buildToolsVersion "23.0.1"

O que mais importa é que eles combinem . Você também pode entrar em react-native-onesignal/build.gradle e alterá-lo para ser o que você deseja.

corresponder aos arquivos build.gradle não corrigiu isso

@ hamadasamir85 Não tenho ideia de como é o seu ambiente, quais dependências você está usando e assim por diante. Até agora, aspidvip é a única pessoa a postar seu build.gradle e outros detalhes. Este é um problema amplo e pode ter muitas causas potenciais. Por favor, poste alguns dos mesmos detalhes que perguntei ao aspidvip.

@aspidvip Por favor, deixe-me saber se a correspondência das versões funciona / não funciona, e também me diga quais níveis de API do Android você tentou / não tentou.

E, francamente, seria _realmente_ útil se você pudesse enviar um projeto de demonstração que reproduzisse esse problema.

O mesmo problema:

Em um novo projeto nativo reage

package.json

`` `` {
"nome": "meuaplicativo",
"versão": "0.0.1",
"privado": verdadeiro,
"scripts": {
"start": "node node_modules / react-native / local-cli / cli.js start",
"teste": "brincadeira"
},
"dependências": {
"react": "16.3.1",
"reagir nativo": "0.55.4",
"react-native-onesignal": "^ 3.2.4"
},
"devDependencies": {
"babel-jest": "22.4.4",
"babel-preset-react-native": "4.0.0",
"jest": "22.4.4",
"react-test-renderer": "16.3.1"
},
"jest": {
"preset": "react-native"
}
}

`` ``

logcat

`` ``
05-23 23: 08: 46.555 12785-12785 /? E / Zygote: v2
05-23 23: 08: 46.555 12785-12785 /? I / libpersona: KNOX_SDCARD verificando isso para 10304
KNOX_SDCARD não é uma pessoa
05-23 23: 08: 46.557 12785-12785 /? E / Zygote: accessInfo: 0
05-23 23: 08: 46.558 12785-12785 /? W / SELinux: SELinux selinux_android_compute_policy_index: Índice de política [2], Con: u : r: zigoto: s0 SPD: SEPF_SECMOBILE_7.0_0006 RAM: SEPF_SECMOBILE_7.0_0009 , [-1 -1 -9 -1 0 1]
05-23 23: 08: 46.561 12785-12785 /? I / SELinux: SELinux: seapp_context_lookup: seinfo = não confiável, nível = s0: c512, c768, pkgname = app.myapp
05-23 23: 08: 46.569 12785-12785 /? I / art: Ativação tardia -
05-23 23: 08: 46.623 12785-12785 /? D / TimaKeyStoreProvider: TimaSignature não está disponível
05-23 23: 08: 46.624 12785-12785 /? D / ActivityThread: Adicionado provedor TimaKeyStore
23/05 23: 08: 46.735 12785-12785 / app.myapp D / ContextRelationMgrBrdg: loadKlass (): caller = com.samsung.android.bridge.multiscreen.common.ContextRelationManagerBridge.: 28 android.app.LoadedApk.makeAp plication: 840
23/05 23: 08: 46.748 12785-12785 / app.myapp I / FirebaseInitProvider: Inicialização do FirebaseApp malsucedida
23: 08: 46.753 05-23 12785-12785 / app.myapp V / fb-UnpackingSoSource: armazenamento dso bloqueado /data/user/0/app.myapp/lib-main
23: 08: 46.756 05-23 12785-12785 / app.myapp V / fb-UnpackingSoSource: incompatibilidade de deps no armazenamento de deps: regenerando
então armazene sujo: regenerando
05-23 23: 08: 46.817 12785-12785 / app.myapp D / ApkSoSource: não permitindo a consideração de lib / armeabi-v7a / libfb.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libfolly_json.so: adiando para libdir
05-23 23: 08: 46.817 12785-12785 / app.myapp D / ApkSoSource: não permitindo a consideração de lib / armeabi-v7a / libglog.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libglog_init.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libgnustl_shared.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libicu_common.so: adiando para libdir
05-23 23: 08: 46.818 12785-12785 / app.myapp D / ApkSoSource: não permitindo a consideração de lib / armeabi-v7a / libimagepipeline.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libjsc.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libprivatedata.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libreactnativejni.so: adiando para libdir
não permitindo a consideração de lib / armeabi-v7a / libyoga.so: adiando para libdir
23/05 23: 08: 46.818 12785-12785 / app.myapp V / fb-UnpackingSoSource: regenerando armazenamento DSO com.facebook.soloader.ApkSoSource
05-23 23: 08: 46.819 12785-12785 / app.myapp V / fb-UnpackingSoSource: iniciando o trabalho de sincronização
05-23 23: 08: 46.836 12785-12785 / app.myapp V / fb-UnpackingSoSource: liberando o bloqueio de armazenamento dso para /data/user/0/app.myapp/lib-main (do thread de sincronização)
não liberando bloqueio de armazenamento dso para /data/user/0/app.myapp/lib-main (thread de sincronização iniciado)
23: 08: 46.914 05-23 12785-12785 / app.myapp D / ReactNative: ReactInstanceManager.ctor ()
23/05 23: 08: 46.936 12785-12785 / app.myapp D / NetworkSecurityConfig: Nenhuma configuração de segurança de rede especificada, usando o padrão da plataforma
05-23 23: 08: 46.988 12785-12785 / app.myapp D / SensorManager: registerListener :: 0, Sensor de aceleração K6DS3TR, 66667, 0,
23/05 23: 08: 47.027 12785-12785 / app.myapp D / ReactNative: ReactInstanceManager.createReactContextInBackground ()
ReactInstanceManager.recreateReactContextInBackgroundInner ()
23/05 23: 08: 47.066 12785-12851 / app.myapp W / desconhecido: InspectorPackagerConnection : Não foi possível conectar ao empacotador, tentarei novamente silenciosamente
23: 08: 47.117 05-23 12785-12785 / app.myapp D / InputTransport: Canal de entrada construído: fd = 65
23/05 23: 08: 47.118 12785-12785 / app.myapp D / ViewRootImpl @ 5e04455 [MainActivity]: setView = DecorView @ 40d2e6a [MainActivity] touchMode = true
23/05 23: 08: 47.125 12785-12785 / app.myapp D / SensorManager: unregisterListener ::
23: 08: 47.145 05-23 12785-12785 / app.myapp D / SensorManager: registerListener :: 0, Sensor de aceleração K6DS3TR, 66667, 0,
23/05 23: 08: 47.207 12785-12853 / app.myapp I / OpenGLRenderer: EGL inicializado, versão 1.4
23/05 23: 08: 47.207 12785-12853 / app.myapp D / OpenGLRenderer: Comportamento de troca 1
23/05 23: 08: 47.229 12785-12853 / app.myapp D / libGLESv1: STS_GLApi: DTS não é permitido para Pacote: app.myapp
23/05 23: 08: 47.232 12785-12853 / app.myapp D / mali_winsys: EGLint new_window_surface (egl_winsys_display , void , EGLSurface, EGLConfig, egl_winsys_surface , egl_color_buffer_format , EGL2560 - formato 123: 08: 47.255 05-23 12785-12785 / app.myapp D / InputTransport: Canal de entrada construído: fd = 7123/05 23: 08: 47.255 12785-12785 / app.myapp D / ViewRootImpl @ 5c120c2 [Po pupWindow: 2eda90d ]: setView = android.widget.PopupWindow $ PopupDecorView {3423ed3 VE ..... ...... EU.


formato: 0x93xean
05-23 23: 08: 47.550 12785-12785 / app.myapp D / ViewRootImpl @ 5c120c2 [Po pupWindow: 2eda90d ]: MSG_RESIZED_REPORT: ci = Reto (0, 0 - 0, 0) vi = Reto (0, 0 - 0 , 0) ou = 1
23/05 23: 08: 48.641 12785-12785 / app.myapp D / ViewRootImpl @ 5c120c2 [Po pupWindow: 2eda90d ]: dispatchDetachedFromWindow
05-23 23: 08: 48.670 12785-12785 / app.myapp D / InputTransport: Canal de entrada destruído: fd = 71
05-23 23: 08: 48.671 12785-12785 / app.myapp D / ReactNative: ReactInstanceManager.onJSBundleLoadedFromServer ()
05-23 23: 08: 48.672 12785-12785 / app.myapp D / ReactNative: ReactInstanceManager.recreateReactContextInBackground ()
23: 08: 48.673 05-23 12785-12785 / app.myapp D / ReactNative: ReactInstanceManager.runCreateReactContextOnNewThread ()
05-23 23: 08: 48.697 12785-13022 / app.myapp I / art: Thread [25, tid = 13022, Native, Thread * = 0xdeac1600, peer = 0x12cdf5e0, "Thread-5"] tentativa recursiva de carregar a biblioteca " /data/app/app.myapp-2/lib/arm/libfb.so "
23: 08: 48.699 05-23 12785-13022 / app.myapp D / ReactNative: ReactInstanceManager.createReactContext ()
23/05 23: 08: 48.711 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTGroupViewManager
23/05 23: 08: 48.713 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTGroupShadowNode
23/05 23: 08: 48.717 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTShapeViewManager
Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTShapeShadowNode
23/05 23: 08: 48.720 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTTextViewManager
Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTTextShadowNode
23/05 23: 08: 48.722 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.checkbox.ReactCheckBoxManager
23/05 23: 08: 48.729 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.uimanager.LayoutShadowNode
23/05 23: 08: 48.740 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.picker.ReactDialogPickerManager
23/05 23: 08: 48.744 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.drawer.ReactDrawerLayoutManager
23/05 23: 08: 48.749 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.picker.ReactDropdownPickerManager
23/05 23: 08: 48.750 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : não foi possível encontrar setter gerado para a classe com.facebook.react.views.scroll.ReactHorizontalScrollViewManager
23/05 23: 08: 48.762 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : não foi possível encontrar setter gerado para a classe com.facebook.react.views.scroll.ReactHorizontalScrollContainerViewManager
23/05 23: 08: 48.764 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.progressbar.ReactProgressBarViewManager
23/05 23: 08: 48.767 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.progressbar.ProgressBarShadowNode
23/05 23: 08: 48.769 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.scroll.ReactScrollViewManager
23/05 23: 08: 48.776 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.slider.ReactSliderManager
23/05 23: 08: 48.780 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.slider.ReactSliderManager $ ReactSliderShadowNode
23/05 23: 08: 48.781 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.switchview.ReactSwitchManager
23/05 23: 08: 48.784 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.switchview.ReactSwitchManager $ ReactSwitchShadowNode
23/05 23: 08: 48.785 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.toolbar.ReactToolbarManager
23/05 23: 08: 48.791 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.webview.ReactWebViewManager
23/05 23: 08: 48.797 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager
23/05 23: 08: 48.802 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTSurfaceViewManager
23/05 23: 08: 48.803 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.art.ARTSurfaceViewShadowNode
23/05 23: 08: 48.804 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.frescosupport.FrescoBasedReactTextInlineImageViewManager
23/05 23: 08: 48.805 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.frescosupport.FrescoBasedReactTextInlineImageShadowNode
23/05 23: 08: 48.807 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.image.ReactImageManager
23/05 23: 08: 48.814 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.modal.ReactModalHostManager
23/05 23: 08: 48.817 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.modal.ModalHostShadowNode
23/05 23: 08: 48.818 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.ReactRawTextManager
23/05 23: 08: 48.820 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.ReactRawTextShadowNode
23/05 23: 08: 48.822 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.textinput.ReactTextInputManager
23/05 23: 08: 48.835 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.textinput.ReactTextInputShadowNode
23/05 23: 08: 48.841 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.ReactTextViewManager
23/05 23: 08: 48.847 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.ReactTextShadowNode
23/05 23: 08: 48.848 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.view.ReactViewManager
23/05 23: 08: 48.857 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.viewpager.ReactViewPagerManager
23/05 23: 08: 48.862 12785-13022 / app.myapp W / desconhecido: ViewManagerPropertyUpdater : Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.ReactVirtualTextViewManager
Não foi possível encontrar setter gerado para a classe com.facebook.react.views.text.ReactVirtualTextShadowNode
05-23 23: 08: 48.885 12785-13022 / app.myapp D / ReactNative: Inicializando a ponte React Xplat.
05-23 23: 08: 48.890 12785-13022 / app.myapp D / ReactNative: Inicializando o React Xplat Bridge antes de inicializar o Bridge
05-23 23: 08: 48.905 12785-13022 / app.myapp D / ReactNative: Inicializando o React Xplat Bridge após initializeBridge
CatalystInstanceImpl.runJSBundle ()
23: 08: 48.906 05-23 12785-13054 / app.myapp D / ReactNative: ReactInstanceManager.setupReactContext ()
CatalystInstanceImpl.initialize ()
23: 08: 48.907 05-23 12785-13054 / app.myapp D / ReactNative: ReactInstanceManager.attachRootViewToInstance ()
23: 08: 48.907 05-23 12785-12785 / app.myapp W / desconhecido: ReactNative : Conexão do empacotador já aberta, nooping.
23/05 23: 08: 49.512 12785-13054 / app.myapp I / WebViewFactory: Carregando com.android.chrome versão 66.0.3359.158 (código 335915852)
23/05 23: 08: 49.675 12785-13054 / app.myapp I / cr_LibraryLoader: Tempo para carregar bibliotecas nativas: 13 ms (carimbos de data / hora 3227-3240)
05-23 23: 08: 49.704 12785-13054 / app.myapp I / chromium: [ INFO: library_loader_hooks.cc (36)]
23: 08: 49.705 05-23 12785-13054 / app.myapp I / cr_LibraryLoader: Número da versão da biblioteca nativa esperado "66.0.3359.158", número da versão da biblioteca nativa real "66.0.3359.158"
23/05 23: 08: 49.994 12785-13053 / app.myapp I / ReactNativeJS: Executando o aplicativo "myapp" com appParams: {"rootTag": 1}. __DEV__ === verdadeiro, o aviso de nível de desenvolvimento está ATIVADO, as otimizações de desempenho estão DESATIVADAS
23/05 23: 08: 50.096 12785-13054 / app.myapp E / onesignal: Não é possível inicializar o SDK OneSignal porque a atividade é nula true ou oneSignalInitDonefalse
23: 09: 03.299 05-23 23: 09: 03.299 12785-12798 / app.myapp I / arte: GC de varredura de marca simultânea aderente de fundo liberou 22289 (2 MB) objetos AllocSpace, 21 (484 KB) objetos LOS, 15% livre, 16 MB / 19 MB, pausado 904us total 119.769ms
23: 09: 21.462 05-23 12785-12785 / app.myapp W / desconhecido: ReactNative : Conexão do empacotador já aberta, nooping.
05-23 23: 09: 21.618 12785-12785 / app.myapp D / ViewRootImpl @ 5e04455 [MainActivity]: MSG_RESIZED_REPORT: ci = Rect (0, 0 - 0, 0) vi = Rect (0, 0 - 0, 0) ou = 1
05-23 23: 09: 21.856 12785-12785 / app.myapp D / ViewRootImpl @ 5e04455 [MainActivity]: MSG_RESIZED: ci = Rect (0, 84 - 0, 0) vi = Rect (0, 84 - 0, 0) ou = 1
23/05 23: 09: 21.894 12785-12785 / app.myapp D / ViewRootImpl @ 5e04455 [MainActivity]: MSG_WINDOW_FOCUS_CHANGED 1
23/05 23: 09: 21.904 12785-12785 / app.myapp V / InputMethodManager: Iniciando a entrada: tba = android.view.inputmethod. EditorInfo @ 95c25a2 nm: app.myapp ic = null
23: 09: 21.904 05-23 12785-12785 / app.myapp I / InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
23: 09: 22.052 05-23 12785-12799 / app.myapp D / InputTransport: Canal de entrada construído: fd = 86
23/05 23: 09: 22.053 12785-12785 / app.myapp V / InputMethodManager: Iniciando a entrada: tba = android.view.inputmethod. EditorInfo @ dcef9f0 nm: app.myapp ic = null
23: 09: 23.373 05-23 12785-12791 / app.myapp I / arte: Faça a coleta de cache de código parcial, código = 30 KB, dados = 30 KB
23: 09: 23.374 05-23 12785-12791 / app.myapp I / art: após a coleta do cache de código, código = 30 KB, dados = 30 KB
Aumentando a capacidade do cache de código para 128 KB
23/05 23: 09: 51.860 12785-12785 / app.myapp V / InputMethodManager: Iniciando a entrada: tba = android.view.inputmethod. EditorInfo @ 642c97f nm: app.myapp ic = null
23: 09: 51.861 05-23 12785-12785 / app.myapp I / InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
23: 09: 51.871 05-23 12785-12785 / app.myapp D / InputTransport: Canal de entrada construído: fd = 83
Canal de entrada destruído: fd = 86
23/05 23: 09: 52.285 12785-12785 / app.myapp D / SensorManager: unregisterListener ::
23/05 23: 09: 52.726 12785-12785 / app.myapp V / InputMethodManager: Iniciando a entrada: tba = android.view.inputmethod. EditorInfo @ dc47e9b nm: app.myapp ic = null
23: 09: 52.726 05-23 12785-12785 / app.myapp I / InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
23: 09: 52.727 05-23 12785-12785 / app.myapp D / InputTransport: Canal de entrada destruído: fd = 83
05-23 23: 09: 52.807 12785-12785 / app.myapp D / ViewRootImpl @ 5e04455 [MainActivity]: MSG_RESIZED_REPORT: ci = Rect (0, 0 - 0, 0) vi = Rect (0, 0 - 0, 0) ou = 1
23: 09: 52.888 05-23 12785-12785 / app.myapp D / ViewRootImpl @ 5e04455 [MainActivity]: MSG_WINDOW_FOCUS_CHANGED 0
05-23 23: 13: 47.153 12785-12798 / app.myapp I / art: Varredura de marca simultânea parcial do fundo GC liberou 60244 (2 MB) objetos AllocSpace, 9 (3 MB) objetos LOS, 40% livre, 12MB / 21 MB, pausado 764us total 105,326 ms

`` ``

App.js

/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 * <strong i="7">@flow</strong>
 */

import React, { Component } from 'react';
import {
  Platform,
  StyleSheet,
  Text,
  View
} from 'react-native';
import OneSignal from 'react-native-onesignal';



const instructions = Platform.select({
  ios: 'Press Cmd+R to reload...,\n' +
    'Cmd+D or shake for dev menu',
  android: 'Double tap R on your keyboard to reload,\n' +
    'Shake or press menu button for dev menu',
});

type Props = {};
export default class App extends Component<Props> {

    componentWillMount() {
        OneSignal.init("1c25f475-8b98-487d-8358-b3934f9bff64");
        OneSignal.addEventListener('received', this.onReceived);
        OneSignal.addEventListener('opened', this.onOpened);
        OneSignal.addEventListener('ids', this.onIds);
    }

    componentWillUnmount() {
        OneSignal.removeEventListener('received', this.onReceived);
        OneSignal.removeEventListener('opened', this.onOpened);
    }
    onIds=(deviceId)=> {
        console.log('Device info: ', deviceId);
    }
    onReceived(notification) {
        console.log("Notification received: ", notification);
    }

    onOpened(openResult) {
        console.log('Message: ', openResult.notification.payload.body);
        console.log('Data: ', openResult.notification.payload.additionalData);
        console.log('isActive: ', openResult.notification.isAppInFocus);
        console.log('openResult: ', openResult);
    }

  render() {
    return (
      <View style={styles.container}>
        <Text style={styles.welcome}>
          Welcome to React Native!
        </Text>
        <Text style={styles.instructions}>
          To get started, edit App.js
        </Text>
        <Text style={styles.instructions}>
          {instructions}
        </Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
  },
  welcome: {
    fontSize: 20,
    textAlign: 'center',
    margin: 10,
  },
  instructions: {
    textAlign: 'center',
    color: '#333333',
    marginBottom: 5,
  },
});


build.gradle

`` ``
aplique o plugin: "com.android.application"

import com.android.build.OutputFile

/ **

  • O arquivo react.gradle registra uma tarefa para cada variante de construção (por exemplo, bundleDebugJsAndAssets
  • e bundleReleaseJsAndAssets).
  • Basicamente, eles chamam react-native bundle com os argumentos corretos durante a compilação do Android
  • ciclo. Por padrão, bundleDebugJsAndAssets é ignorado, pois no modo debug / dev preferimos carregar o
  • empacotar diretamente do servidor de desenvolvimento. Abaixo você pode ver todas as configurações possíveis
  • e seus padrões. Se você decidir adicionar um bloco de configuração, certifique-se de adicioná-lo antes de
  • Linha apply from: "../../node_modules/react-native/react.gradle" .
    *
  • project.ext.react = [
  • // o nome do arquivo de ativo gerado contendo seu pacote JS
  • bundleAssetName: "index.android.bundle",
    *
  • // o arquivo de entrada para geração de pacote
  • entryFile: "index.android.js",
    *
  • // se deve agrupar JS e ativos no modo de depuração
  • bundleInDebug: false,
    *
  • // se deve agrupar JS e recursos no modo de lançamento
  • bundleInRelease: true,
    *
  • // se deve agrupar JS e recursos em outra variante de compilação (se configurada).
  • // Consulte http://tools.android.com/tech-docs/new-build-system/user-guide#TOC -Build-Variants
  • // A propriedade de configuração pode estar nos seguintes formatos
  • // 'bundleIn $ {productFlavor} $ {buildType}'
  • // 'bundleIn $ {buildType}'
  • // bundleInFreeDebug: true,
  • // bundleInPaidRelease: true,
  • // bundleInBeta: true,
    *
  • // se deve desativar o modo dev em variantes de compilação personalizadas (por padrão, desativado apenas na versão)
  • // por exemplo: para desativar o modo dev no tipo de compilação de teste (se configurado)
  • devDisabledInStaging: true,
  • // A propriedade de configuração pode estar nos seguintes formatos
  • // 'devDisabledIn $ {productFlavor} $ {buildType}'
  • // 'devDisabledIn $ {buildType}'
    *
  • // a raiz do seu projeto, ou seja, onde mora "package.json"
  • raiz: "../../",
    *
  • // onde colocar o ativo do pacote JS no modo de depuração
  • jsBundleDirDebug: "$ buildDir / intermediates / assets / debug",
    *
  • // onde colocar o recurso do pacote JS no modo de liberação
  • jsBundleDirRelease: "$ buildDir / intermediates / assets / release",
    *
  • // onde colocar recursos drawable / React Native assets, por exemplo, aqueles que você usa por meio de
  • // require ('./ image.png')), no modo de depuração
  • resourcesDirDebug: "$ buildDir / intermediates / res / merged / debug",
    *
  • // onde colocar recursos drawable / React Native assets, por exemplo, aqueles que você usa por meio de
  • // require ('./ image.png')), no modo de liberação
  • resourcesDirRelease: "$ buildDir / intermediates / res / merged / release",
    *
  • // por padrão, as tarefas gradle são ignoradas se nenhum dos arquivos JS ou ativos mudar; isso significa
  • // que não olhamos para arquivos em android / ou ios / para determinar se as tarefas estão até
  • // encontro; se você tiver quaisquer outras pastas que deseja ignorar por motivos de desempenho (gradle
  • // indexa a árvore inteira), adicione-os aqui. Como alternativa, se você tiver arquivos JS em android /
  • // por exemplo, você pode querer removê-lo daqui.
  • inputExcludes: ["android / ", "ios / "],
    *
  • // sobrescreve qual nó é chamado e com quais argumentos adicionais
  • nodeExecutableAndArgs: ["node"],
    *
  • // fornece argumentos adicionais para o empacotador
  • extraPackagerArgs: []
  • ]
    * /

project.ext.react = [
entryFile: "index.js"
]

aplicar de: "../../node_modules/react-native/react.gradle"

/ **

  • Defina como verdadeiro para criar dois APKs separados em vez de um:

    • Um APK que funciona apenas em dispositivos ARM


    • Um APK que funciona apenas em dispositivos x86

  • A vantagem é que o tamanho do APK é reduzido em cerca de 4 MB.
  • Faça upload de todos os APKs para a Play Store e as pessoas farão o download
  • o correto com base na arquitetura da CPU de seu dispositivo.
    * /
    def enableSeparateBuildPerCPUArchitecture = false

/ **

  • Execute o Proguard para reduzir o bytecode Java nas versões de lançamento.
    * /
    def enableProguardInReleaseBuilds = false

android {
compileSdkVersion 23
buildToolsVersion "23.0.1"

defaultConfig {
    applicationId "app.myapp"
    minSdkVersion 16
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
    ndk {
        abiFilters "armeabi-v7a", "x86"
    }
}
splits {
    abi {
        reset()
        enable enableSeparateBuildPerCPUArchitecture
        universalApk false  // If true, also generate a universal APK
        include "armeabi-v7a", "x86"
    }
}
buildTypes {
    release {
        minifyEnabled enableProguardInReleaseBuilds
        proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
    }
}
// applicationVariants are e.g. debug, release
applicationVariants.all { variant ->
    variant.outputs.each { output ->
        // For each separate APK per architecture, set a unique version code as described here:
        // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits
        def versionCodes = ["armeabi-v7a":1, "x86":2]
        def abi = output.getFilter(OutputFile.ABI)
        if (abi != null) {  // null for the universal-debug, universal-release variants
            output.versionCodeOverride =
                    versionCodes.get(abi) * 1048576 + defaultConfig.versionCode
        }
    }
}

}

dependencies {
projeto de compilação (': react-native-onesignal')
compilar fileTree (dir: "libs", incluir: ["* .jar"])
compilar "com.android. support: appcompat-v7 : 23.4.0"
compilar "com.facebook. react : react
}

// Execute uma vez para poder executar o aplicativo com BUCK
// coloca todas as dependências de compilação em bibliotecas de pastas para o BUCK usar
tarefa copyDownloadableDepsToLibs (tipo: Copy) {
de configurations.compile
em 'libs'
}

`` ``
A propósito, iniciei um novo projeto porque era impossível fazê-lo funcionar em um projeto existente.

Para qualquer pessoa que também esteja tendo esse problema, geralmente é por causa da pilha de navegação específica do seu aplicativo. Geralmente, ele pode ser corrigido usando a inicialização nativa do SDK como @urbancvek observado acima. Observe que o SDK ainda oferece suporte à inicialização nativa (sem usar JS), você não precisa voltar para 3.1.4.

@ cesarve77 @aspidvip Algum de vocês pode postar MainApplication.java ?

Sim, mas sou novo no One signal e não consegui encontrar a documentação

09/06/2018 12:03 GMT + 10: 00 Brad Hesse [email protected] :

@urbancvek https://github.com/urbancvek observe que o SDK ainda
suporta inicialização nativa (sem usar JS), você não precisa ir
de volta a 3.1.4.

-
Você está recebendo isso porque comentou.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/geektimecoil/react-native-onesignal/issues/516#issuecomment-395931945 ,
ou silenciar o tópico
https://github.com/notifications/unsubscribe-auth/ADyXp8VcHWtSuGuhqu6GAmhuwEAs28yJks5t6y0MgaJpZM4UFgCX
.

Eu vou fazer isso mais tarde.

12/06/2018 11h19 GMT + 10h Brad Hesse [email protected] :

@ cesarve77 https://github.com/cesarve77 @aspidvip
https://github.com/aspidvip Qualquer um de vocês pode postar seu
MainApplication.java?

-
Você está recebendo isso porque foi mencionado.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/geektimecoil/react-native-onesignal/issues/516#issuecomment-396435196 ,
ou silenciar o tópico
https://github.com/notifications/unsubscribe-auth/ADyXp85jPYJ5TPNv7xwQt_3CoZ-rNvsuks5t7xcSgaJpZM4UFgCX
.

Tentei atualizar e usar as novas instruções do novo leiame. Depois de algumas tentativas eu
finalmente decidiu voltar para "react-native-onesignal": "3.0.7", e tudo funciona como antes.

Testei 3.2.4, 3.2.3 ... e todas as vezes tive um problema. Então, escolhi a versão de um de meu outro projeto.

Para resumir, tenho a implementação antiga (lado nativo) https://github.com/geektimecoil/react-native-onesignal/blob/732491fece1fa92946ca6dacf173af28a2b2e618/README.md e chamo OneSignal.configure() no meu código javascript, no meu caso esteja na minha loja mobx depois que o usuário estiver conectado ao aplicativo.

Problema em 3.2.3: Unable to initialize the OneSignal SDK because activity is null true or oneSignalInitDonefalse
Problema em 3.2.4: You must initialize OneSignal before getting tags! Moving this tag operation to a pending queue.

@nicovak isso provavelmente significa que você está usando alguma dependência como react-native-navigation (assim como algumas outras) que faz com que a atividade inicial passada ao nosso SDK seja nula automaticamente.

Estamos trabalhando em uma solução para isso, entretanto, fazer o downgrade para 3.0.7 é uma boa ideia se você estiver enfrentando esse problema específico.

@ Nightsd01 sim, estou usando react-native-router-flux que depende de react-navigation , depois de alguma pesquisa, finalmente consegui funcionar como esperado.

Eu declarei um ouvinte de evento em meu App.js (incluído em index.js), esses ouvintes atualizam minha loja com os valores desejados. Assim, posso chamar funções facilmente quando preciso. Antes de os ouvintes do evento serem declarados em minha loja.
Eu coloco um exemplo de código se alguém tiver o mesmo caso.

Também tive um pequeno problema quando o aplicativo foi fechado: não recebi o evento opened . Ele estava funcionando apenas se o aplicativo estivesse em segundo plano, com o código acima tudo funcionava bem.

Em meu App.js

import OneSignal from "react-native-onesignal";

OneSignal.configure({});
OneSignal.addEventListener("opened", openResult => {
  AppStore.handleOpenIfAppClosed(openResult);
});
OneSignal.addEventListener("ids", device => {
  AppStore.handleUserId(device);
});

<strong i="14">@observer</strong>
export default class App extends Component {

Na minha loja

  handleOpenIfAppClosed(openResult) {
    this.pendingNotificationRequest = openResult;
  }

  handleUserId(device) {
    this.userId = device.userId;
  }

@nicovak Como você corrigiu o problema principal (a atividade é nula)?

Além disso, com o problema de opened ... tem certeza de que ainda está usando a versão mais recente de react-native-onesignal ? Este é um problema que foi corrigido há algum tempo.

@ Nightsd01 Não estou usando a última versão (3.0.7), é assim que eu conserto a atividade é um problema nulo.
Como eu disse que tinha:

Problema em 3.2.3: Não é possível inicializar o OneSignal SDK porque a atividade é nula, verdadeira ou oneSignalInitDonefalse

Problema em 3.2.4: você deve inicializar o OneSignal antes de obter as tags! Movendo esta operação de tag para uma fila pendente.

@nicovak Você pode ignorar esse aviso em 3.2.4. Significa o que diz: seu aplicativo está de alguma forma chamando getTags() antes que a inicialização seja concluída. No entanto, é apenas um aviso, porque ainda funcionará bem.

Se esse for o _somente_ problema que você está tendo no 3.2.4, recomendo fortemente a atualização para o 3.2.4, pois ele corrige muitos problemas que estavam presentes no 3.0.7.

@ Nightsd01 Ok, obrigado, vou tentar amanhã com a minha configuração real 👍

@ Nightsd01 Tentei atualizar para 3.2.4 novamente, mas não foi possível fazê-lo funcionar. Tentei inicialização nativa e inicialização javascript. Coloquei o código no aplicativo componentWillMount e fora dele, mas nada funcionou.
Eu gastei muito tempo nisso, desculpe, vou tentar ^ 3.2.4 em um próximo projeto.

Descobriu o que está causando esse problema @aspidvip @nicovak , ele foi resolvido em um novo PR. Deve ser incluído em um lançamento hoje ou amanhã.

@ Nightsd01 Muito obrigado, você é demais. Vou atualizá-lo e testá-lo na próxima segunda-feira, se estiver disponível.

A nova atualização (3.2.5) foi lançada! Se alguém encontrar um problema semelhante, poste aqui e ficaremos felizes em investigar

Tenho o problema novamente com a versão 0.56 do react nativo.
Devo estar em 27 ? O Google Docs diz que 26 deve estar funcionando, certo?

    buildToolsVersion = "26.0.3"
    minSdkVersion = 16
    compileSdkVersion = 26
    targetSdkVersion = 26
    supportLibVersion = "26.1.0"
07-31 15:01:50.077 7068-7224/com.*************** I/art: Rejecting re-init on previously-failed class java.lang.Class<com.onesignal.OneSignalChromeTab$OneSignalCustomTabsServiceConnection>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/customtabs/CustomTabsServiceConnection;
        at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
        at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
        at void java.lang.Thread.run() (Thread.java:776)
    Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.customtabs.CustomTabsServiceConnection" on path: DexPathList[[zip file "/data/app/com..***************-2/base.apk"],nativeLibraryDirectories=[/data/app/com..***************-2/lib/arm, /data/app/com..***************-2/base.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib, /system/vendor/lib, /product/lib]]
        at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:56)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:380)
        at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
        at void com.onesignal.OneSignalChromeTab.setup(android.content.Context, java.lang.String, java.lang.String, java.lang.String) (OneSignalChromeTab.java:46)
        at void com.onesignal.OneSignal$7.run() (OneSignal.java:1164)
        at void java.lang.Thread.run() (Thread.java:776)
Esta página foi útil?
0 / 5 - 0 avaliações