React-native-onesignal: (Android) E/onesignal: Das OneSignal SDK kann nicht initialisiert werden, da die Aktivität null true oder oneSignalInitDonefalse ist

Erstellt am 19. Mai 2018  ·  30Kommentare  ·  Quelle: OneSignal/react-native-onesignal

Hallo!
"reaktiv-nativ": "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. unter iOS arbeiten

  2. funktioniert nicht auf Android

Hilfreichster Kommentar

Ich habe es gelöst, indem ich einfach react-native-onesignal:3.1.4 . Es initialisiert mit:

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"]
    }

und das ist es. Viel einfacher, als dies von der JS-Seite aus zu tun, wenn Sie die reaktive-native-Navigation verwenden.

Alle 30 Kommentare

1

@aspidvip können Sie bitte weitere Details

Ich hatte dieses Problem auch. Ich denke, es liegt an der React-Native-Navigation. Es startet eine andere Aktivität direkt nach dem Start der Anwendung. Wenn Sie in der Zwischenzeit OneSignal.init() aufrufen, heißt es, dass die Aktivität null ist - der Fehler, den Sie haben.

Wenn Sie einige Sekunden warten, bevor Sie OneSignal.init() aufrufen, funktioniert es, aber dann erhalten Sie einen weiteren Fehler. Die mit FirebaseApp nicht initialisiert. Ausgabe #515. Hoffe auch hier auf einen Fix oder Workaround...

Ich habe es gelöst, indem ich einfach react-native-onesignal:3.1.4 . Es initialisiert mit:

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"]
    }

und das ist es. Viel einfacher, als dies von der JS-Seite aus zu tun, wenn Sie die reaktive-native-Navigation verwenden.

keine Spieler-ID, keine Push-Benachrichtigungen möglich!

@urbancvek Dieselbe Initialisierungstechnik (mit AppDelegate für iOS und gradle für Android) funktioniert auch in 3.2.3

@aspidvip Das ist ein sehr breites Thema, es könnte alles sein. Dies ist wahrscheinlich ein Problem mit der reaktiven Navigation und dem Timing Ihrer OneSignal-Initialisierung

Ich tat

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

aber nein keine Spieler-ID, keine Push-Benachrichtigungen erhalten!

@aspidvip kannst du dein build.gradle posten? Das wäre sicher ein Abhängigkeitsproblem.

Sie können auch versuchen, in die Datei react-native-onesignal/build.gradle und das OneSignal Android SDK auf 3.9.1 zu aktualisieren

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 Dies bedeutet, dass die Android-API-Ebene in react-native-onesignal/build.gradle und in app/build.gradle wahrscheinlich nicht übereinstimmt. Ich würde vorschlagen, die API-Ebene Ihrer App wie folgt zu ändern:

    compileSdkVersion 23
    buildToolsVersion "23.0.1"

Am wichtigsten ist, dass sie zusammenpassen . Sie können auch einfach zu react-native-onesignal/build.gradle und es so ändern, wie Sie es möchten.

Das Abgleichen der build.gradle-Dateien hat das Problem nicht behoben

@hamadasamir85 Ich habe keine Ahnung, wie Ihre Umgebung aussieht, welche Abhängigkeiten Sie verwenden und so weiter. Bisher ist aspidvip die einzige Person, die ihre build.gradle und andere Details veröffentlicht. Dies ist ein weitreichendes Problem und kann viele mögliche Ursachen haben. Bitte posten Sie einige der gleichen Details, die ich aspidvip gefragt habe.

@aspidvip Bitte lassen Sie mich wissen, ob das Abgleichen der Versionen funktioniert/nicht funktioniert, und

Und ehrlich gesagt, es wäre _wirklich_ hilfreich, wenn Sie ein Demo-Projekt senden könnten, das dieses Problem reproduziert.

Gleicher Fehler:

Auf einem frischen, nativen Projekt

Paket.json

````{
"name": "myapp",
"Version": "0.0.1",
"privat": wahr,
"Skripte": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "scherz"
},
"Abhängigkeiten": {
"reagieren": "16.3.1",
"reaktiv-nativ": "0.55.4",
"react-native-onesignal": "^3.2.4"
},
"devDependencies": {
"babel-scherz": "22.4.4",
"babel-preset-react-native": "4.0.0",
"scherz": "22.4.4",
"react-test-renderer": "16.3.1"
},
"scherz": {
"preset": "reaktiv-nativ"
}
}

````

logcat

````
05-23 23:08:46.555 12785-12785/? E/Zygote: v2
05-23 23:08:46.555 12785-12785/? I/libpersona: KNOX_SDCARD prüft dies auf 10304
KNOX_SDCARD ist keine Person
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 : Richtlinienindex[2], Con:u :r : zygote: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=nicht vertrauenswürdig, level=s0:c512,c768, pkgname=app.myapp
05-23 23:08:46.569 12785-12785/? I/art: Late-enabling - Xcheck:jni
05-23 23:08:46.623 12785-12785/? D/TimaKeyStoreProvider: TimaSignature ist nicht verfügbar
05-23 23:08:46,624 12785-12785/? D/ActivityThread: TimaKeyStore-Anbieter hinzugefügt
05-23 23:08:46.735 12785-12785/app.myapp D/ContextRelationMgrBrdg: loadKlass() : caller=com.samsung.android.bridge.multiscreen.common.ContextRelationManagerBridge.:28 android.app.LoadedApk.makeAp plikation :840
05-23 23:08:46.748 12785-12785/app.myapp I/FirebaseInitProvider: FirebaseApp-Initialisierung nicht erfolgreich
05-23 23:08:46.753 12785-12785/app.myapp V/fb-UnpackingSoSource: gesperrter DSO-Speicher /data/user/0/app.myapp/lib-main
05-23 23:08:46.756 12785-12785/app.myapp V/fb-UnpackingSoSource: Deps Mismatch im Deps Store: Regeneriert
also schmutzig lagern: regenerieren
05-23 23:08:46.817 12785-12785/app.myapp D/ApkSoSource: Berücksichtigung von lib/armeabi-v7a/libfb.so nicht zulassen: Verschiebung auf libdir
Berücksichtigung von lib/armeabi-v7a/libfolly_json.so nicht erlauben: Zurückstellen auf libdir
05-23 23:08:46.817 12785-12785/app.myapp D/ApkSoSource: Berücksichtigung von lib/armeabi-v7a/libglog.so nicht zulassen: Verschiebung auf libdir
Berücksichtigung von lib/armeabi-v7a/libglog_init.so nicht erlauben: Zurückstellen auf libdir
Berücksichtigung von lib/armeabi-v7a/libgnustl_shared.so nicht erlauben: Zurückstellen auf libdir
Berücksichtigung von lib/armeabi-v7a/libicu_common.so nicht zulassen: Zurückstellen auf libdir
05-23 23:08:46.818 12785-12785/app.myapp D/ApkSoSource: Berücksichtigung von lib/armeabi-v7a/libimagepipeline.so nicht zulassen: Verschiebung auf libdir
Berücksichtigung von lib/armeabi-v7a/libjsc.so nicht erlauben: Zurückstellen auf libdir
Berücksichtigung von lib/armeabi-v7a/libprivatedata.so nicht erlauben: Zurückstellen auf libdir
Berücksichtigung von lib/armeabi-v7a/libreactnativejni.so nicht zulassen: Zurückstellen auf libdir
Berücksichtigung von lib/armeabi-v7a/libyoga.so nicht zulassen: Zurückstellen auf libdir
05-23 23:08:46.818 12785-12785/app.myapp V/fb-UnpackingSoSource: Regenerieren des DSO-Stores com.facebook.soloader.ApkSoSource
05-23 23:08:46.819 12785-12785/app.myapp V/fb-UnpackingSoSource: Syncer-Worker starten
23.05. 23:08:46.836 12785-12785/app.myapp V/fb-UnpackingSoSource: Freigabe der DSO-Speichersperre für /data/user/0/app.myapp/lib-main (vom Syncer-Thread)
DSO-Speichersperre für /data/user/0/app.myapp/lib-main nicht freigegeben (Syncer-Thread gestartet)
05-23 23:08:46.914 12785-12785/app.myapp D/ReactNative: ReactInstanceManager.ctor()
05-23 23:08:46.936 12785-12785/app.myapp D/NetworkSecurityConfig: Keine Netzwerksicherheitskonfiguration angegeben, Plattformstandard verwenden
05-23 23:08:46.988 12785-12785/app.myapp D/SensorManager: registerListener :: 0, K6DS3TR Beschleunigungssensor, 66667, 0,
05-23 23:08:47.027 12785-12785/app.myapp D/ReactNative: ReactInstanceManager.createReactContextInBackground()
ReactInstanceManager.recreateReactContextInBackgroundInner()
05-23 23:08:47.066 12785-12851/app.myapp W/ unknown:InspectorPackagerConnection : Konnte keine Verbindung zum Packager herstellen, wird es im Hintergrund erneut versuchen
05-23 23:08:47.117 12785-12785/app.myapp D/InputTransport: Eingangskanal aufgebaut: fd=65
05-23 23:08:47.118 12785-12785/app.myapp D/ ViewRootImpl@5e04455 [MainActivity]: setView = DecorView@40d2e6a [MainActivity] touchMode=true
05-23 23:08:47.125 12785-12785/app.myapp D/SensorManager: unregisterListener ::
05-23 23:08:47.145 12785-12785/app.myapp D/SensorManager: registerListener :: 0, K6DS3TR Beschleunigungssensor, 66667, 0,
05-23 23:08:47.207 12785-12853/app.myapp I/OpenGLRenderer: Initialisierte EGL, Version 1.4
05-23 23:08:47.207 12785-12853/app.myapp D/OpenGLRenderer: Swap-Verhalten 1
05-23 23:08:47.229 12785-12853/app.myapp D/libGLESv1: STS_GLApi: DTS ist nicht erlaubt für Paket: app.myapp
05-23 23: 08: 47,232 12.785-12.853 / app.myapp D / mali_winsys: EGLint new_window_surface (egl_winsys_display, lücke, EGLSurface, EGLConfig, egl_winsys_surface, egl_color_buffer_format, EGLBoolean) kehrt 0x3000 [1440x2560] - Format: 105-23 23:08:47.255 12785-12785/app.myapp D/InputTransport: Eingangskanal aufgebaut: fd=7105-23 23:08:47.255 12785-12785/app.myapp D/ ViewRootImpl@5c120c2 [Po pupWindow:2eda90d ]: setView = android.widget.PopupWindow$PopupDecorView{3423ed3 VE..... ...... ICH.


Format: 1
05-23 23:08:47.550 12785-12785/app.myapp D/ ViewRootImpl@5c120c2 [Po pupWindow:2eda90d ]: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0 , 0) oder=1
05-23 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: Eingangskanal zerstört: 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()
05-23 23:08:48,673 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"] rekursiver Versuch die Bibliothek zu laden " /data/app/app.myapp-2/lib/arm/libfb.so"
05-23 23:08:48.699 12785-13022/app.myapp D/ReactNative: ReactInstanceManager.createReactContext()
05-23 23:08:48.711 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.art.ARTGroupViewManager konnte nicht gefunden werden
05-23 23:08:48.713 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.art.ARTGroupShadowNode konnte nicht gefunden werden
05-23 23:08:48.717 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.art.ARTShapeViewManager konnte nicht gefunden werden
Generierter Setter für Klasse com.facebook.react.views.art.ARTShapeShadowNode konnte nicht gefunden werden
05-23 23:08:48.720 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.art.ARTTextViewManager konnte nicht gefunden werden
Generierter Setter für Klasse com.facebook.react.views.art.ARTTextShadowNode konnte nicht gefunden werden
05-23 23:08:48.722 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.checkbox.ReactCheckBoxManager konnte nicht gefunden werden
05-23 23:08:48.729 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.uimanager.LayoutShadowNode konnte nicht gefunden werden
05-23 23:08:48.740 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.picker.ReactDialogPickerManager konnte nicht gefunden werden
05-23 23:08:48.744 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.drawer.ReactDrawerLayoutManager konnte nicht gefunden werden
05-23 23:08:48.749 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.picker.ReactDropdownPickerManager konnte nicht gefunden werden
05-23 23:08:48.750 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.scroll.ReactHorizontalScrollViewManager konnte nicht gefunden werden
05-23 23:08:48.762 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.scroll.ReactHorizontalScrollContainerViewManager konnte nicht gefunden werden
05-23 23:08:48.764 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.progressbar.ReactProgressBarViewManager konnte nicht gefunden werden
05-23 23:08:48.767 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.progressbar.ProgressBarShadowNode konnte nicht gefunden werden
05-23 23:08:48.769 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.scroll.ReactScrollViewManager konnte nicht gefunden werden
05-23 23:08:48.776 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.slider.ReactSliderManager konnte nicht gefunden werden
05-23 23:08:48.780 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.slider.ReactSliderManager$ReactSliderShadowNode konnte nicht gefunden werden
05-23 23:08:48.781 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.switchview.ReactSwitchManager konnte nicht gefunden werden
05-23 23:08:48,784 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.switchview.ReactSwitchManager$ReactSwitchShadowNode konnte nicht gefunden werden
05-23 23:08:48.785 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.toolbar.ReactToolbarManager konnte nicht gefunden werden
05-23 23:08:48.791 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.webview.ReactWebViewManager konnte nicht gefunden werden
05-23 23:08:48.797 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.swiperefresh.SwipeRefreshLayoutManager konnte nicht gefunden werden
05-23 23:08:48.802 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.art.ARTSurfaceViewManager konnte nicht gefunden werden
05-23 23:08:48.803 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.art.ARTSurfaceViewShadowNode konnte nicht gefunden werden
05-23 23:08:48.804 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.text.frescosupport.FrescoBasedReactTextInlineImageViewManager konnte nicht gefunden werden
05-23 23:08:48.805 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.text.frescosupport.FrescoBasedReactTextInlineImageShadowNode konnte nicht gefunden werden
05-23 23:08:48.807 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.image.ReactImageManager konnte nicht gefunden werden
05-23 23:08:48.814 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.modal.ReactModalHostManager konnte nicht gefunden werden
05-23 23:08:48.817 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.modal.ModalHostShadowNode konnte nicht gefunden werden
05-23 23:08:48.818 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.text.ReactRawTextManager konnte nicht gefunden werden
05-23 23:08:48.820 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.text.ReactRawTextShadowNode konnte nicht gefunden werden
05-23 23:08:48.822 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.textinput.ReactTextInputManager konnte nicht gefunden werden
05-23 23:08:48.835 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.textinput.ReactTextInputShadowNode konnte nicht gefunden werden
05-23 23:08:48.841 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.text.ReactTextViewManager konnte nicht gefunden werden
05-23 23:08:48.847 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.text.ReactTextShadowNode konnte nicht gefunden werden
05-23 23:08:48.848 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.view.ReactViewManager konnte nicht gefunden werden
05-23 23:08:48.857 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.viewpager.ReactViewPagerManager konnte nicht gefunden werden
05-23 23:08:48.862 12785-13022/app.myapp W/ unknown:ViewManagerPropertyUpdater : Generierter Setter für Klasse com.facebook.react.views.text.ReactVirtualTextViewManager konnte nicht gefunden werden
Generierter Setter für Klasse com.facebook.react.views.text.ReactVirtualTextShadowNode konnte nicht gefunden werden
23.05. 23:08:48.885 12785-13022/app.myapp D/ReactNative: Initialisieren von React Xplat Bridge.
05-23 23:08:48.890 12785-13022/app.myapp D/ReactNative: Initialisieren von React Xplat Bridge vor initializeBridge
05-23 23:08:48.905 12785-13022/app.myapp D/ReactNative: Initialisieren von React Xplat Bridge nach initializeBridge
CatalystInstanceImpl.runJSBundle()
05-23 23:08:48.906 12785-13054/app.myapp D/ReactNative: ReactInstanceManager.setupReactContext()
CatalystInstanceImpl.initialize()
05-23 23:08:48.907 12785-13054/app.myapp D/ReactNative: ReactInstanceManager.attachRootViewToInstance()
05-23 23:08:48.907 12785-12785/app.myapp W/ unknown:ReactNative : Packager-Verbindung bereits geöffnet, nooping.
05-23 23:08:49.512 12785-13054/app.myapp I/WebViewFactory: Laden von com.android.chrome Version 66.0.3359.158 (Code 335915852)
05-23 23:08:49.675 12785-13054/app.myapp I/cr_LibraryLoader: Zeit zum Laden nativer Bibliotheken: 13 ms (Zeitstempel 3227-3240)
05-23 23:08:49.704 12785-13054/app.myapp I/chromium: [ INFO:library_loader_hooks.cc (36)] Chromium-Protokollierung aktiviert: Level = 0, Standardausführlichkeit = 0
05-23 23:08:49.705 12785-13054/app.myapp I/cr_LibraryLoader: Erwartete native Bibliotheksversionsnummer "66.0.3359.158", tatsächliche native Bibliotheksversionsnummer "66.0.3359.158"
05-23 23:08:49.994 12785-13053/app.myapp I/ReactNativeJS: Ausführen der Anwendung "myapp" mit appParams: {"rootTag":1}. __DEV__ === true, Warnungen auf Entwicklungsebene sind AN, Leistungsoptimierungen sind AUS
05-23 23:08:50.096 12785-13054/app.myapp E/onesignal: Das OneSignal SDK kann nicht initialisiert werden, da die Aktivität null true oder oneSignalInitDonefalse ist
05-23 23:09:03.299 12785-12798/app.myapp I/art: Sticky Concurrent Mark Sweep im Hintergrund GC freigegeben 22289(2MB) AllocSpace Objekte, 21(484KB) LOS Objekte, 15% frei, 16MB/19MB, angehalten 904us insgesamt 119,769 ms
23.05. 23:09:21.462 12785-12785/app.myapp W/ unknown:ReactNative : Packager-Verbindung bereits geöffnet, 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) oder=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) oder=1
05-23 23:09:21.894 12785-12785/app.myapp D/ ViewRootImpl@5e04455 [MainActivity]: MSG_WINDOW_FOCUS_CHANGED 1
05-23 23:09:21.904 12785-12785/app.myapp V/InputMethodManager: Starteingabe: tba=android.view.inputmethod. EditorInfo@95c25a2 nm : app.myapp ic=null
05-23 23:09:21.904 12785-12785/app.myapp I/InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
05-23 23:09:22.052 12785-12799/app.myapp D/InputTransport: Eingangskanal aufgebaut: fd=86
05-23 23:09:22.053 12785-12785/app.myapp V/InputMethodManager: Starteingabe: tba=android.view.inputmethod. EditorInfo@dcef9f0 nm : app.myapp ic=null
05-23 23:09:23.373 12785-12791/app.myapp I/art: Teilweise Code-Cache-Sammlung durchführen, Code=30KB, Daten=30KB
05-23 23:09:23.374 12785-12791/app.myapp I/art: Nach der Code-Cache-Sammlung, Code=30KB, Daten=30KB
Erhöhung der Code-Cache-Kapazität auf 128 KB
05-23 23:09:51.860 12785-12785/app.myapp V/InputMethodManager: Starteingabe: tba=android.view.inputmethod. EditorInfo@642c97f nm: app.myapp ic=null
05-23 23:09:51.861 12785-12785/app.myapp I/InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
05-23 23:09:51.871 12785-12785/app.myapp D/InputTransport: Eingangskanal aufgebaut: fd=83
Eingangskanal zerstört: fd=86
05-23 23:09:52.285 12785-12785/app.myapp D/SensorManager: unregisterListener ::
05-23 23:09:52.726 12785-12785/app.myapp V/InputMethodManager: Starteingabe: tba=android.view.inputmethod. EditorInfo@dc47e9b nm : app.myapp ic=null
05-23 23:09:52.726 12785-12785/app.myapp I/InputMethodManager: [IMM] startInputInner - mService.startInputOrWindowGainedFocus
05-23 23:09:52.727 12785-12785/app.myapp D/InputTransport: Eingangskanal zerstört: 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) oder=1
05-23 23:09:52.888 12785-12785/app.myapp D/ ViewRootImpl@5e04455 [MainActivity]: MSG_WINDOW_FOCUS_CHANGED 0
23:13:47.153 insgesamt 105.326ms

````

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

````
Plugin anwenden: "com.android.application"

com.android.build.OutputFile importieren

/**

  • Die Datei React.gradle registriert eine Task für jede Build-Variante (zB BundleDebugJsAndAssets
  • und BundleReleaseJsAndAssets).
  • Diese rufen im Grunde react-native bundle mit den richtigen Argumenten während des Android-Builds auf
  • Kreislauf. Standardmäßig wird BundleDebugJsAndAssets übersprungen, da wir im Debug-/Dev-Modus es vorziehen, die
  • Bundle direkt vom Entwicklungsserver. Unten sehen Sie alle möglichen Konfigurationen
  • und deren Voreinstellungen. Wenn Sie einen Konfigurationsblock hinzufügen möchten, fügen Sie ihn vor dem
  • apply from: "../../node_modules/react-native/react.gradle" Zeile.
    *
  • project.ext.react = [
  • // der Name der generierten Asset-Datei, die Ihr JS-Bundle enthält
  • BundleAssetName: "index.android.bundle",
    *
  • // die Eingabedatei für die Bundle-Generierung
  • Eintragsdatei: "index.android.js",
    *
  • // ob JS und Assets im Debug-Modus gebündelt werden sollen
  • BundleInDebug: false,
    *
  • // ob JS und Assets im Release-Modus gebündelt werden sollen
  • BundleInRelease: wahr,
    *
  • // ob JS und Assets in einer anderen Build-Variante gebündelt werden sollen (sofern konfiguriert).
  • // Siehe http://tools.android.com/tech-docs/new-build-system/user-guide#TOC -Build-Variants
  • // Die Konfigurationseigenschaft kann die folgenden Formate haben
  • // 'bundleIn${productFlavor}${buildType}'
  • // 'bundleIn${buildType}'
  • // BundleInFreeDebug: wahr,
  • // BundleInPaidRelease: true,
  • // BundleInBeta: wahr,
    *
  • // ob der Dev-Modus in benutzerdefinierten Build-Varianten deaktiviert werden soll (standardmäßig nur in der Version deaktiviert)
  • // zum Beispiel: um den Dev-Modus im Staging-Build-Typ zu deaktivieren (falls konfiguriert)
  • devDisabledInStaging: wahr,
  • // Die Konfigurationseigenschaft kann die folgenden Formate haben
  • // 'devDisabledIn${productFlavor}${buildType}'
  • // 'devDisabledIn${buildType}'
    *
  • // die Wurzel Ihres Projekts, dh wo "package.json" lebt
  • Wurzel: "../../",
    *
  • // wo das JS-Bundle-Asset in den Debug-Modus versetzt werden soll
  • jsBundleDirDebug: "$buildDir/intermediates/assets/debug",
    *
  • // wo das JS-Bundle-Asset in den Release-Modus versetzt werden soll
  • jsBundleDirRelease: "$buildDir/intermediates/assets/release",
    *
  • // wo ziehbare Ressourcen abgelegt werden sollen / Reagieren Sie Native Assets, z. B. die, die Sie über verwenden
  • // require('./image.png')), im Debug-Modus
  • RessourcenDirDebug: "$buildDir/intermediates/res/merged/debug",
    *
  • // wo ziehbare Ressourcen abgelegt werden sollen / Reagieren Sie Native Assets, z. B. die, die Sie über verwenden
  • // require('./image.png')), im Release-Modus
  • RessourcenDirRelease: "$buildDir/intermediates/res/merged/release",
    *
  • // standardmäßig werden die Gradle-Aufgaben übersprungen, wenn sich keine der JS-Dateien oder Assets ändert; das heisst
  • // dass wir uns keine Dateien in Android/ oder ios/ ansehen, um festzustellen, ob die Aufgaben gewachsen sind
  • // Datum; wenn Sie andere Ordner haben, die Sie aus Leistungsgründen ignorieren möchten (gradle
  • // indiziert den gesamten Baum), fügen Sie sie hier hinzu. Alternativ, wenn Sie JS-Dateien in Android/
  • // Sie können es beispielsweise von hier entfernen.
  • inputExcludes: ["android/ ", "ios/ "],
    *
  • // überschreibe, welcher Knoten aufgerufen wird und mit welchen zusätzlichen Argumenten
  • nodeExecutableAndArgs: ["Knoten"],
    *
  • // dem Paketierer zusätzliche Argumente liefern
  • extraPackagerArgs: []
  • ]
    */

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

bewerben von: "../../node_modules/react-native/react.gradle"

/**

  • Setzen Sie dies auf true, um zwei separate APKs anstelle von einem zu erstellen:

    • Eine APK, die nur auf ARM-Geräten funktioniert


    • Ein APK, das nur auf x86-Geräten funktioniert

  • Der Vorteil ist, dass die Größe der APK um ca. 4 MB reduziert wird.
  • Laden Sie alle APKs in den Play Store hoch und die Leute werden herunterladen
  • die richtige basierend auf der CPU-Architektur ihres Geräts.
    */
    def enableSeparateBuildPerCPUArchitecture = false

/**

  • Führen Sie Proguard aus, um den Java-Bytecode in Release-Builds zu verkleinern.
    */
    def enableProguardInReleaseBuilds = false

Android {
compilierenSdkVersion 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
        }
    }
}

}

Abhängigkeiten {
Projekt kompilieren(':react-native-onesignal')
compiliere fileTree(dir: "libs", include: ["*.jar"])
Kompilieren Sie "com.android. support:appcompat-v7 :23.4.0"
compiliere "com.facebook. react:react-native :+" // Von node_modules
}

// Führen Sie dies einmal aus, um die Anwendung mit BUCK ausführen zu können
// legt alle Kompilierungsabhängigkeiten in den Ordner libs, damit BUCK sie verwenden kann
Aufgabe copyDownloadableDepsToLibs(Typ: Kopieren) {
von configurations.compile
in 'libs'
}

````
Übrigens starte ich ein neues Projekt, weil es unmöglich war, es in einem bestehenden Projekt zum Laufen zu bringen.

Für alle, die dieses Problem ebenfalls haben, liegt es im Allgemeinen an dem speziellen Navigationsstapel Ihrer App. Es kann normalerweise behoben werden, indem die native Initialisierung des SDK wie oben erwähnt

@cesarve77 @aspidvip Kann einer von euch sein MainApplication.java posten?

Ja, aber ich bin neu in One Signal und konnte die Dokumentation nicht finden

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

@urbancvek https://github.com/urbancvek Bitte beachten Sie, dass das SDK immer noch
unterstützt die native Initialisierung (ohne Verwendung von JS), Sie müssen nicht gehen
zurück zu 3.1.4.


Sie erhalten dies, weil Sie einen Kommentar abgegeben haben.
Antworten Sie direkt auf diese E-Mail und zeigen Sie sie auf GitHub an
https://github.com/geektimecoil/react-native-onesignal/issues/516#issuecomment-395931945 ,
oder den Thread stumm schalten
https://github.com/notifications/unsubscribe-auth/ADyXp8VcHWtSuGuhqu6GAmhuwEAs28yJks5t6y0MgaJpZM4UFgCX
.

Ich werde es später machen.

2018-06-12 11:19 GMT+10:00 Brad Hesse [email protected] :

@cesarve77 https://github.com/cesarve77 @aspidvip
https://github.com/aspidvip Kann einer von euch euren . posten?
MainApplication.java?


Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail und zeigen Sie sie auf GitHub an
https://github.com/geektimecoil/react-native-onesignal/issues/516#issuecomment-396435196 ,
oder den Thread stumm schalten
https://github.com/notifications/unsubscribe-auth/ADyXp85jPYJ5TPNv7xwQt_3CoZ-rNvsuks5t7xcSgaJpZM4UFgCX
.

Ich habe versucht, die neuen Anweisungen aus der neuen Readme-Datei zu aktualisieren und zu verwenden. Nach einigen Versuchen habe ich
schließlich beschlossen, zurück zu "react-native-onesignal": "3.0.7", zu wechseln und alles funktioniert wie zuvor.

Ich habe 3.2.4, 3.2.3 getestet ... und jedes Mal hatte ich ein Problem. Also habe ich die Version eines meiner anderen Projekte ausgewählt.

Um fortzufahren, habe ich die alte Implementierung (native Seite) https://github.com/geektimecoil/react-native-onesignal/blob/732491fece1fa92946ca6dacf173af28a2b2e618/README.md und ich rufe OneSignal.configure() in meinem Javascript-Code auf Falls es in meinem Mobx Store ist, sobald der Benutzer bei der App angemeldet ist.

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

@nicovak Das bedeutet wahrscheinlich, dass Sie eine Abhängigkeit wie react-native-navigation (sowie einige andere) verwenden, die dazu führt, dass die an unser SDK automatisch übergebene anfängliche Aktivität null ist.

Wir arbeiten an einer Lösung dafür. In der Zwischenzeit ist ein Downgrade auf 3.0.7 eine gute Idee, wenn dieses spezielle Problem auftritt.

@Nightsd01 ja, ich verwende react-native-router-flux was von react-navigation abhängt. Nach einiger Suche funktioniert es endlich wie erwartet.

Ich habe in meiner App.js (in index.js enthalten) Ereignis-Listener deklariert, diese Listener aktualisieren meinen Store mit den gewünschten Werten. So kann ich bei Bedarf problemlos Funktionen aufrufen. Bevor Ereignis-Listener in meinem Shop deklariert wurden.
Ich habe ein Beispiel für Code, wenn jemand den gleichen Fall hat.

Ich hatte auch ein kleines Problem, als die App geschlossen wurde: Ich habe das Ereignis opened nicht erhalten. Es funktionierte nur, wenn die App im Hintergrund war, mit dem obigen Code funktioniert alles einwandfrei.

In meiner 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 {

In meinem Laden

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

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

@nicovak Wie haben Sie das Hauptproblem

Auch mit dem opened Problem... sind Sie sicher, dass Sie immer noch die neueste Version von react-native-onesignal ? Dies ist ein Problem, das vor einiger Zeit behoben wurde.

@Nightsd01 Ich verwende nicht die letzte Version (3.0.7), so behebe ich das Aktivitäts-Null-Problem.
Wie gesagt ich hatte:

Problem bei 3.2.3: Das OneSignal SDK kann nicht initialisiert werden, da die Aktivität null true oder oneSignalInitDonefalse ist

Problem zu 3.2.4: Sie müssen OneSignal initialisieren, bevor Sie Tags erhalten! Verschieben dieses Tag-Vorgangs in eine ausstehende Warteschlange.

@nicovak Sie können diese Warnung in 3.2.4 ignorieren. Es bedeutet, was es sagt: Ihre App ruft irgendwie getTags() bevor die Initialisierung abgeschlossen ist. Es ist jedoch nur eine Warnung, denn es wird immer noch gut funktionieren.

Wenn dies das _einzige_ Problem ist, das Sie in 3.2.4 haben, würde ich dringend empfehlen, zurück auf 3.2.4 zu aktualisieren, da es viele Probleme behebt, die in 3.0.7 vorhanden waren.

@Nightsd01 Ok, danke, ich werde es morgen mit meinem aktuellen Setup ausprobieren 👍

@Nightsd01 Ich habe erneut versucht, auf 3.2.4 zu aktualisieren, aber es ist nicht möglich, dass es funktioniert. Ich habe native Initialisierung und Javascript-Initialisierung versucht. Ich habe Code in App componentWillMount und außerhalb eingegeben, aber nichts hat funktioniert.
Ich habe genug Zeit damit verbracht Entschuldigung, ich werde ^3.2.4 bei einem nächsten Projekt ausprobieren.

Herausgefunden , was dieses Problem @aspidvip @nicovak verursacht , wird es in einer neuen PR behoben. Sollte heute oder morgen in einer Veröffentlichung enthalten sein.

@Nightsd01 Vielen Dank, du

Das neue Update (3.2.5) ist erschienen! Wenn jemand auf ein ähnliches Problem stößt, posten Sie es bitte hier und wir werden es gerne untersuchen

Ich habe das Problem wieder mit der 0.56 Version von React native.
Ich muss in 27 ? Docs sagt, dass 26 funktionieren sollte, oder?

    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)
War diese Seite hilfreich?
0 / 5 - 0 Bewertungen