Używam J2V8 do wykonywania kodu JavaScript na Androida. Czy w moim kodzie Java mogę uzyskać dostęp do funkcji JavaScript i wykonywać je w oddzielnym pliku .js? Jeśli to możliwe, jak mogę to zrobić?Wykonaj funkcję z .js z J2V8
Dziękuję:
Bernat
Używam J2V8 do wykonywania kodu JavaScript na Androida. Czy w moim kodzie Java mogę uzyskać dostęp do funkcji JavaScript i wykonywać je w oddzielnym pliku .js? Jeśli to możliwe, jak mogę to zrobić?Wykonaj funkcję z .js z J2V8
Dziękuję:
Bernat
Podobnie jak w wielu środowiskach JavaScript, wystarczy obciążenia skrypt, który zawiera inne funkcje, które chcesz wykonać browser example. Wszelkie funkcje, które są dodawane do zasięgu globalnym, są teraz dostępne dla Ciebie:
V8 v8 = V8.createV8Runtime(); v8.executeScript(readFileAsString("script1")); // contains the function foo(); v8.executeScript(readFileAsString("script2")); // contains the function bar(x, y); v8.executeJSFunction("foo"); v8.executeJSFunction("bar", 7, 8);
dziękuję za odpowiedź. czy mogę załadować skrypt w jakiś sposób, bez korzystania z WebView? (Staram się w ogóle unikać korzystania z WebView) – konbernu
Tak, w ogóle nie ma tu widoku WWW. Po prostu pokazałem, że z J2V8 jest podobny do działania przeglądarki. – irbull
1. Jeśli moja funkcja zwraca obiekt, czy mogę go uzyskać tak? JSObject testObject = v8.executeJSFunction ("testfunction", alfa, beta); 2. Po dodaniu tych funkcji do zakresu globalnego, czy mogę używać ich w moim skrypcie? Mam na myśli to: runtime.executeVoidScript ("var testObject = testfunction (alfa, beta)"); – konbernu