React-native-onesignal: kesalahan: paket com.geektime.rnonesignalandroid tidak ada

Dibuat pada 19 Mar 2018  ·  4Komentar  ·  Sumber: OneSignal/react-native-onesignal

Halo,

Saya sudah melihat masalah ini direferensikan dan saya mencoba solusi yang diusulkan tetapi masih tidak berhasil untuk saya.
Ini bekerja pada proyek kosong ketika menginstalnya tetapi tidak bekerja pada proyek utama saya, jadi saya bertanya-tanya apa masalahnya?

Namun saya dapat menemukan paket com.geektime.rnonesignalandroid yang benar di node_modules\react-native-onesignal\Android\src\main\Java\com\geektime\rnonesignalandroid jadi saya tidak mengerti mengapa itu tidak ditemukan.

bereaksi 16.0.0
reaksi-asli 0.54.2

Aplikasi Utama saya.java

package com.XXX;

import com.geektime.rnonesignalandroid.ReactNativeOneSignalPackage;
import android.app.Application;

import com.facebook.react.ReactApplication;
import com.AlexanderZaytsev.RNI18n.RNI18nPackage;
import com.facebook.reactnative.androidsdk.FBSDKPackage;
import com.inprogress.reactnativeyoutube.ReactNativeYouTube;
import com.oblador.vectoricons.VectorIconsPackage;
import com.imagepicker.ImagePickerPackage;
import com.RNFetchBlob.RNFetchBlobPackage;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.react.shell.MainReactPackage;
import com.facebook.soloader.SoLoader;
import com.facebook.CallbackManager;
import com.facebook.FacebookSdk;
import com.facebook.appevents.AppEventsLogger;
import java.util.Arrays;
import java.util.List;

public class MainApplication extends Application implements ReactApplication {

  private static CallbackManager mCallbackManager = CallbackManager.Factory.create();

  protected static CallbackManager getCallbackManager() {
    return mCallbackManager;
  }

  private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
    <strong i="12">@Override</strong>
    public boolean getUseDeveloperSupport() {
      return BuildConfig.DEBUG;
    }

    <strong i="13">@Override</strong>
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(new MainReactPackage(),
          new ReactNativeOneSignalPackage(),

          new RNI18nPackage(), new FBSDKPackage(mCallbackManager), new ReactNativeYouTube(), new VectorIconsPackage(),
          new ImagePickerPackage(), new RNFetchBlobPackage());
    }

    <strong i="14">@Override</strong>
    protected String getJSMainModuleName() {
      return "index";
    }
  };

  <strong i="15">@Override</strong>
  public ReactNativeHost getReactNativeHost() {
    return mReactNativeHost;
  }

  <strong i="16">@Override</strong>
  public void onCreate() {
    super.onCreate();

    FacebookSdk.sdkInitialize(getApplicationContext());
    // If you want to use AppEventsLogger to log events.

    SoLoader.init(this, /* native exopackage */ false);

    AppEventsLogger.activateApp(this);
  }
}

ReactNativeOneSignalPackage.java di node_modules saya

package com.geektime.rnonesignalandroid;

import com.facebook.react.ReactPackage;
import com.facebook.react.bridge.JavaScriptModule;
import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.uimanager.ViewManager;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * Created by Avishay on 1/31/16.
 */
public class ReactNativeOneSignalPackage implements ReactPackage {
...
}

Komentar yang paling membantu

Saya tidak tahu mengapa tetapi "react-native-onesignal" tidak menambahkan baris "compile project(':react-native-onesignal')" Saya melakukannya secara manual dan sekarang berfungsi

Masalah kecil lainnya adalah bahwa tindakan tautan menambahkan setiap kali baris berikut

import com.geektime.rnonesignalandroid.ReactNativeOneSignalPackage;
new ReactNativeOneSignalPackage(),

Masalah bisa ditutup

Semua 4 komentar

Saya tidak tahu mengapa tetapi "react-native-onesignal" tidak menambahkan baris "compile project(':react-native-onesignal')" Saya melakukannya secara manual dan sekarang berfungsi

Masalah kecil lainnya adalah bahwa tindakan tautan menambahkan setiap kali baris berikut

import com.geektime.rnonesignalandroid.ReactNativeOneSignalPackage;
new ReactNativeOneSignalPackage(),

Masalah bisa ditutup

@Kisepro Saya tidak dapat mereproduksi masalah ini. Dalam upaya saya, saya membuat proyek asli-reaksi yang benar-benar baru dan secara manual menambahkan SDK reaksi-asli-satu-sinyal mengikuti instruksi di readme.

Apakah Anda mengikuti panduan di readme tepat untuk surat itu? Jika tidak, bagaimana Anda melakukannya?

@Nightsd01 Ya, saya mengikutinya dengan tepat, dan melakukannya pada proyek asli reaksi yang benar-benar baru, ini juga berfungsi untuk saya.

Ini benar-benar spesifik untuk proyek saya, saya pikir dan saya berhasil membuatnya bekerja ketika saya mengerti mengapa jadi saya kira Anda tidak boleh kehilangan waktu untuk masalah itu.

Saya menduga ini bisa jadi karena tautan "react-native-Push-notification", saya memiliki konflik lain dengan paket ini seperti instruksi kompilasi ini

dependencies {
    compile ('com.google.android.gms:play-services-gcm:8.1.0') {
        force = true;
    }
...
}

Saya tidak membutuhkan paket ini lagi jadi bukan masalah besar untuk menghapusnya

Saya senang mendengar bahwa menyelesaikan masalah Anda.

Kami memiliki plugin kelas satu sinyal yang dapat menyelesaikan masalah yang serupa dengan ini. Itu perlu ditempatkan di bagian atas file gradle Aplikasi:

plugins {
    id 'com.onesignal.androidsdk.onesignal-gradle-plugin' version '0.8.1'
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin
Apakah halaman ini membantu?
0 / 5 - 0 peringkat