2017-02-01 11 views

答えて

2

実行しています

を行うには正しい方法を見つけるように見えることはできません。

ReactExecutorServiceは、私がstartService(new Intent(this, MyTaskService.class));を呼び出すときにエクストラを提供していないため、ただ静かに失敗しました。次のコードは、その修正されています。

@Override 
@Nullable 
protected HeadlessJsTaskConfig getTaskConfig(Intent intent) { 
    Bundle extras = intent.getExtras(); 
    WritableMap data = extras != null ? Arguments.fromBundle(extras) : null; 
    return new HeadlessJsTaskConfig(
      "FeatureExecutor", 
      data, 
      5000); 
} 

を私はまたReactApplicationを実装していなかった既存のApplicationクラスを、持っていました。

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

    @Override 
    protected List<ReactPackage> getPackages() { 
     return Arrays.<ReactPackage>asList(
       // Insert your packages, e.g. 
       new MainReactPackage() 
     ); 
    } 
}; 

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

あなたはまた、マニフェストにカスタムサービスを追加する必要があります。私はHeadlessJsTaskService仕事をするためにいくつかのコードを追加する必要がありました。例:

<service android:name=".MyTaskService"/> 

上記の解決方法が役立たない場合は、問題に関する追加情報をご提供ください。

+0

私はちょっと混乱しています。あなたはReactExecutorService.javaファイルをどこに置いていますか?このルートで 'node_mudoles/react-native/ReactAndroid/src/main/java/com/facebook/react/jstasks /'を編集し、このアンドロイド/ app/src/main/AndroidManifest.xml'ディレクトリのマニフェストファイルを編集しますか? –

+0

場合は、ステップバイステップガイドを作成してください –

関連する問題