Skip to content

Commit 13913c9

Browse files
committed
Merge branch 'release/0.3.12'
2 parents a51d4b1 + 3923a74 commit 13913c9

File tree

46 files changed

+1114
-327
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+1114
-327
lines changed

dart_native/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 0.3.12
2+
3+
* [Feature] Support List/Array for Android.
4+
15
## 0.3.11
26

37
* [Fix] Skip BOM for Utf-16 on iOS. Sad!

dart_native/LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
BSD 3-Clause License
22

3-
Copyright (c) 2019, 杨萧玉
3+
Copyright (c) 2021, 杨萧玉
44
All rights reserved.
55

66
Redistribution and use in source and binary forms, with or without
Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
package com.dartnative.dart_native;
2+
3+
import android.util.Log;
4+
import java.util.ArrayList;
5+
import java.util.Arrays;
6+
import java.util.Collections;
7+
import java.util.List;
8+
9+
/**
10+
* Created by huizzzhou on 3/26/21.
11+
*/
12+
public class ArrayListConverter {
13+
14+
/************************basic type list to array***************************************/
15+
16+
public byte[] byteListToArray(List<Byte> arguments) {
17+
byte[] byteArray = new byte[arguments.size()];
18+
for (int i = 0; i < arguments.size(); i++) {
19+
byteArray[i] = arguments.get(i);
20+
}
21+
return byteArray;
22+
}
23+
24+
public short[] shortListToArray(List<Short> arguments) {
25+
short[] shortArray = new short[arguments.size()];
26+
for (int i = 0; i < arguments.size(); i++) {
27+
shortArray[i] = arguments.get(i);
28+
}
29+
return shortArray;
30+
}
31+
32+
public long[] longListToArray(List<Long> arguments) {
33+
long[] longArray = new long[arguments.size()];
34+
for (int i = 0; i < arguments.size(); i++) {
35+
longArray[i] = arguments.get(i);
36+
}
37+
return longArray;
38+
}
39+
40+
public int[] intListToArray(List<Integer> arguments) {
41+
int[] intArray = new int[arguments.size()];
42+
for (int i = 0; i < arguments.size(); i++) {
43+
intArray[i] = arguments.get(i);
44+
}
45+
return intArray;
46+
}
47+
48+
public boolean[] boolListToArray(List<Boolean> arguments) {
49+
boolean[] boolArray = new boolean[arguments.size()];
50+
for (int i = 0; i < arguments.size(); i++) {
51+
boolArray[i] = arguments.get(i);
52+
}
53+
return boolArray;
54+
}
55+
56+
public char[] charListToArray(List<Character> arguments) {
57+
char[] charArray = new char[arguments.size()];
58+
for (int i = 0; i < arguments.size(); i++) {
59+
charArray[i] = arguments.get(i);
60+
}
61+
return charArray;
62+
}
63+
64+
public float[] floatListToArray(List<Float> arguments) {
65+
float[] floatArray = new float[arguments.size()];
66+
for (int i = 0; i < arguments.size(); i++) {
67+
floatArray[i] = arguments.get(i);
68+
}
69+
return floatArray;
70+
}
71+
72+
public double[] doubleListToArray(List<Double> arguments) {
73+
double[] doubleArray = new double[arguments.size()];
74+
for (int i = 0; i < arguments.size(); i++) {
75+
doubleArray[i] = arguments.get(i);
76+
}
77+
return doubleArray;
78+
}
79+
80+
/************************object type list to array***************************************/
81+
82+
public Object[] objectListToArray(List<Object> arguments) {
83+
Object[] doubleArray = new Object[arguments.size()];
84+
for (int i = 0; i < arguments.size(); i++) {
85+
doubleArray[i] = arguments.get(i);
86+
}
87+
return doubleArray;
88+
}
89+
90+
91+
/************************array to list***************************************/
92+
93+
public List arrayToList(Object array) {
94+
List arrayList;
95+
if (array instanceof byte[]) {
96+
arrayList = new ArrayList<Byte>();
97+
for (byte b : (byte []) array) {
98+
arrayList.add(b);
99+
}
100+
} else if (array instanceof short[]) {
101+
arrayList = new ArrayList<Short>();
102+
for (short s : (short []) array) {
103+
arrayList.add(s);
104+
}
105+
} else if (array instanceof long[]) {
106+
arrayList = new ArrayList<Long>();
107+
for (long l : (long []) array) {
108+
arrayList.add(l);
109+
}
110+
} else if (array instanceof int[]) {
111+
arrayList = new ArrayList<Integer>();
112+
for (int i : (int []) array) {
113+
arrayList.add(i);
114+
}
115+
} else if (array instanceof boolean[]) {
116+
arrayList = new ArrayList<Boolean>();
117+
for (boolean b : (boolean []) array) {
118+
arrayList.add(b);
119+
}
120+
} else if (array instanceof char[]) {
121+
arrayList = new ArrayList<Character>();
122+
for (char c : (char[]) array) {
123+
arrayList.add(c);
124+
}
125+
} else if (array instanceof float[]) {
126+
arrayList = new ArrayList<Float>();
127+
for (float f : (float[]) array) {
128+
arrayList.add(f);
129+
}
130+
} else if (array instanceof double[]) {
131+
arrayList = new ArrayList<Double>();
132+
for (double d : (double[]) array) {
133+
arrayList.add(d);
134+
}
135+
} else {
136+
arrayList = Collections.singletonList(array);
137+
}
138+
139+
return arrayList;
140+
}
141+
142+
}

0 commit comments

Comments
 (0)