6
有關此的原始文檔看起來不完整。我按照本指南這似乎並沒有在任何地方導致我:React Native - 無頭JS示例
https://facebook.github.io/react-native/releases/next/docs/headless-js-android.html#headless-js
我應該在哪裏把java文件? 我該如何開始這項工作?
有關此的原始文檔看起來不完整。我按照本指南這似乎並沒有在任何地方導致我:React Native - 無頭JS示例
https://facebook.github.io/react-native/releases/next/docs/headless-js-android.html#headless-js
我應該在哪裏把java文件? 我該如何開始這項工作?
將.java文件放入您的項目中。例如。 /app/src/main/java/com/alex/app/service/
如果要執行特定的JavaScript代碼而不顯示ReactRootView
,則可以使用自定義的HeadlessJsTaskService
。
要開始任務,只需撥打startService(new Intent(this, MyTaskService.class));
,例如從其他服務或甚至從一項活動中調用。
提示: 我改變了教程的getTaskConfig()
方法,因此它允許空演員:
@Override
@Nullable
protected HeadlessJsTaskConfig getTaskConfig(Intent intent) {
Bundle extras = intent.getExtras();
WritableMap data = extras != null ? Arguments.fromBundle(extras) : null;
return new HeadlessJsTaskConfig(
"SomeTaskName",
data,
5000);
}
或者至少改變它,所以它不只是默默的,如果沒有提供額外失敗。
我現在實際上也在解決這個問題。你有沒有進展?我認爲你可以通過https://facebook.github.io/react-native/docs/appregistry.html#startheadlesstask –
開始任務。我爲Android系統實現了一個帶有後臺服務的本地模塊。這非常直截了當。我會在某個時候再試一次,並在此發佈我的發現。 – Alex
小心分享您的Android服務嗎?因爲我做了類似的事情:D –