2017-05-21 2 views
0

Après avoir été si proche de l'exécution réussie de React-Native pour Android, j'ai rencontré l'erreur suivante.Exécution de CodePush avec Android dans React-Native

:app:compileDebugJavaWithJavac 
/Users/Spicycurryman/Desktop/Main/Projects/Wosyl-Delivery-1.0-master/android/app/src/main/java/com/wosyldelivery/MainApplication.java:30: error: no suitable constructor found for CodePush(<null>,<anonymous ReactNativeHost>,boolean) 
      new CodePush(null, this, BuildConfig.DEBUG), 
      ^
    constructor CodePush.CodePush(String,Context,boolean,String) is not applicable 
     (actual and formal argument lists differ in length) 
    constructor CodePush.CodePush(String,Context,boolean) is not applicable 
     (actual argument <anonymous ReactNativeHost> cannot be converted to Context by method invocation conversion) 
    constructor CodePush.CodePush(String,Context) is not applicable 
     (actual and formal argument lists differ in length) 
1 error 
:app:compileDebugJavaWithJavac FAILED 

J'ai en suivant les instructions du repo et ne sais pas pourquoi ce phénomène se produit même après avoir regardé ce https://github.com/Microsoft/react-native-code-push/issues/790

Voici mon MainApplication.java pour le contexte complet.

package com.wosyldelivery; 

import android.app.Application; 
import android.util.Log; 

import com.facebook.react.ReactApplication; 
import com.microsoft.codepush.react.CodePush; 
import com.oblador.vectoricons.VectorIconsPackage; 
import com.facebook.react.ReactInstanceManager; 
import com.facebook.react.ReactNativeHost; 
import com.facebook.react.ReactPackage; 
import com.facebook.react.shell.MainReactPackage; 


import java.util.Arrays; 
import java.util.List; 

public class MainApplication extends Application implements ReactApplication { 

    private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { 
    @Override 
    protected boolean getUseDeveloperSupport() { 
     return BuildConfig.DEBUG; 
    } 

    @Override 
    protected List<ReactPackage> getPackages() { 
     return Arrays.<ReactPackage>asList(
      new MainReactPackage(), 
      new CodePush(null, this, BuildConfig.DEBUG), 
      new VectorIconsPackage() 
    ); 
    } 
    @Override 
    protected String getJSBundleFile() { 
     return CodePush.getJSBundleFile(); 
    } 
    }; 

    @Override 
    public ReactNativeHost getReactNativeHost() { 
     return mReactNativeHost; 
    } 
} 

Quelle est la cause de cette erreur? Comment peut-il être résolu?

+0

essayez de remplacer null avec une chaîne de caractères (ex "") –

+0

@PriyeshKumar Malheureusement, la même erreur s'est produite –

+0

Autres idées sur la façon de résoudre? –

Répondre

0

Changement instancier du CodePush à ceci:

new CodePush("deployment-key-here", MainApplication.this, BuildConfig.DEBUG) 
1
new CodePush("deployment-key", getApplicationContext(), BuildConfig.DEBUG) 

deployment-key est une chaîne alphanumérique que vous obtenez lorsque vous enregistrez votre compte-push de code et il ne peut pas être nulle.