File tree 1 file changed +27
-3
lines changed
android/src/main/java/com/reactlibrary
1 file changed +27
-3
lines changed Original file line number Diff line number Diff line change @@ -68,7 +68,7 @@ public String getName() {
68
68
}
69
69
70
70
@ ReactMethod
71
- public void createClient (String address , int port ){
71
+ public void createClient (String address , int port ) {
72
72
ipAddress = address ;
73
73
portOut = port ;
74
74
@@ -84,8 +84,32 @@ public void createClient(String address, int port){
84
84
}
85
85
86
86
@ ReactMethod
87
- public void sendMessage (String address , ReadableArray args ){
88
- OSCMessage msg = new OSCMessage (address , args .toArrayList ());
87
+ public void sendMessage (String address , ReadableArray args ) {
88
+ // OSCMessage msg = new OSCMessage(address, args.toArrayList());
89
+ ArrayList arr = new ArrayList ();
90
+ for (int i = 0 ; i < args .size (); i ++) {
91
+ switch (args .getType (i )) {
92
+ case Boolean :
93
+ arr .add (args .getBoolean (i ));
94
+ break ;
95
+ case Number :
96
+ double dVal = args .getDouble (i );
97
+ int iVal = (int ) dVal ;
98
+ if (iVal == dVal ) {
99
+ // we have an int
100
+ arr .add (iVal );
101
+ } else {
102
+ // we have a floating point number
103
+ arr .add ((float ) dVal );
104
+ }
105
+ break ;
106
+ case String :
107
+ default :
108
+ arr .add (args .getString (i ));
109
+ break ;
110
+ }
111
+ }
112
+ OSCMessage msg = new OSCMessage (address , arr );
89
113
try {
90
114
client .send (msg );
91
115
} catch (Exception e ) {
You can’t perform that action at this time.
0 commit comments