下面列出了com.facebook.react.bridge.ReadableArray#toArrayList ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@ReactMethod
public void authorize(ReadableMap options) {
final Activity activity = getCurrentActivity();
if (mGoogleFitManager == null) {
mGoogleFitManager = new GoogleFitManager(mReactContext, activity);
}
if (mGoogleFitManager.isAuthorized()) {
return;
}
ReadableArray scopes = options.getArray("scopes");
ArrayList<String> scopesList = new ArrayList<String>();
for (Object type : scopes.toArrayList()) {
scopesList.add(type.toString());
}
mGoogleFitManager.authorize(scopesList);
}
/**
* Card networks supported by your app and your gateway
*
* @return allowed card networks
* @see <a
* href="https://developers.google.com/pay/api/android/reference/object#CardParameters">CardParameters</a>
*/
private static JSONArray getAllowedCardNetworks(ReadableArray cardNetworks) {
JSONArray jsonArray = new JSONArray();
for (Object value : cardNetworks.toArrayList()) {
jsonArray.put(value.toString());
}
return jsonArray;
}
/**
* Card networks supported by your app and your gateway
*
* @return allowed card networks
* @see <a
* href="https://developers.google.com/pay/api/android/reference/object#CardParameters">CardParameters</a>
*/
private static JSONArray getAllowedCardNetworks(ReadableArray cardNetworks) {
JSONArray jsonArray = new JSONArray();
for (Object value : cardNetworks.toArrayList()) {
jsonArray.put(value.toString());
}
return jsonArray;
}
public void subscribe(ReadableArray dataTypes) {
ArrayList<String> dataTypesList = new ArrayList<String>();
for (Object type : dataTypes.toArrayList()) {
dataTypesList.add(type.toString());
}
for (String dataTypeName : dataTypesList) {
DataType dataType = getDataType(dataTypeName);
// Just skip unknown data types
if (dataType == null) {
continue;
}
final String eventName = getEventName(dataTypeName);
Fitness.RecordingApi.subscribe(googleFitManager.getGoogleApiClient(), dataType)
.setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(@NonNull Status status) {
WritableMap map = Arguments.createMap();
map.putString("type", eventName);
if (status.isSuccess()) {
map.putBoolean("recording", true);
Log.i(TAG, "RecordingAPI - Connected");
sendEvent(reactContext, eventName, map);
} else {
map.putBoolean("recording", false);
Log.i(TAG, "RecordingAPI - Error connecting");
sendEvent(reactContext, eventName, map);
}
}
});
}
}
@ReactProp(name = "shape")
public void setShape(FrameLayout iconicButtonFrame, ReadableArray shps) {
shapes = shps.toArrayList();
setState(iconicButtonFrame, selection);
}