7
7
1 . Download the latest ` .aar ` archive from [ release] ( https://github.com/shiqimei/quickjs-android/releases ) page;
8
8
2 . In Android Studio: ` File > New > New Module > Import .JAR/.AAR Package ` , locate ` .aar ` , click ` Finish ` .
9
9
10
- ``` Java
11
- QuickJS quickJS = new QuickJS .Builder (). build();
12
- try (JSRuntime runtime = quickJS. createJSRuntime()) {
13
- try (JSContext context = runtime. createJSContext()) {
14
- String script1 = " " +
15
- " function fibonacci(n) {" +
16
- " if (n == 0 || n == 1) return n;" +
17
- " return fibonacci(n - 1) + fibonacci(n - 2);" +
18
- " }" ;
19
- // Evaluate a script without return value
20
- context. evaluate(script1, " fibonacci.js" );
21
-
22
- String script2 = " fibonacci(10);" ;
23
- // Evaluate a script with return value
24
- int result = context. evaluate(script2, " fibonacci.js" , int . class);
25
- assertEquals(55 , result);
26
- }
10
+ ``` Java
11
+ QuickJS quickJS = new QuickJS .Builder (). build();
12
+ try (JSRuntime runtime = quickJS. createJSRuntime()) {
13
+ try (JSContext context = runtime. createJSContext()) {
14
+ String script1 = " " +
15
+ " function fibonacci(n) {" +
16
+ " if (n == 0 || n == 1) return n;" +
17
+ " return fibonacci(n - 1) + fibonacci(n - 2);" +
18
+ " }" ;
19
+ // Evaluate a script without return value
20
+ context. evaluate(script1, " fibonacci.js" );
21
+
22
+ String script2 = " fibonacci(10);" ;
23
+ // Evaluate a script with return value
24
+ int result = context. evaluate(script2, " fibonacci.js" , int . class);
25
+ assertEquals(55 , result);
27
26
}
28
- ```
27
+ }
28
+ ```
29
29
30
- See [ Usages.md] ( ./Usages.md ) for advanced usages.
30
+ See [ Usages.md] ( ./Usages.md ) for advanced usages.
31
31
32
32
## Develop
33
33
@@ -41,11 +41,11 @@ Open the folder `quickjs-android` in Android Studio.
41
41
42
42
This is a non-serious benchmark. The purpose is to compare the performance of QuickJS and V8 on Android.
43
43
44
- | Engine | v8 | QuickJS (Bytecode Mode) |
45
- | :----: | :--: | :---------------------: |
46
- | init | 30ms | 14ms |
47
- | eval | 29ms | 47ms |
48
- | total | 59ms | 61ms |
44
+ | Engine | v8 | QuickJS (Script Mode) | QuickJS ( Bytecode Mode) |
45
+ | :----: | :--: | :-------------------: | :------------------- --: |
46
+ | init | 37ms | 18ms | 18ms |
47
+ | eval | 35ms | 282ms | 48ms |
48
+ | total | 72ms | 300ms | 56ms |
49
49
50
50
- Device: Huawei P30 Pro (Kirin 980), Android 10.
51
51
- Test JavaScript File: ` asset:/sonic.js ` (189 KB).
0 commit comments