com.facebook.react.bridge.ReadableArray#getString ( )源码实例Demo

下面列出了com.facebook.react.bridge.ReadableArray#getString ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: react-native-aztec   文件: ReactAztecManager.java
@Override
public void receiveCommand(final ReactAztecText parent, int commandType, @Nullable ReadableArray args) {
    Assertions.assertNotNull(parent);
    if (commandType == COMMAND_NOTIFY_APPLY_FORMAT) {
        final String format = args.getString(0);
        Log.d(TAG, String.format("Apply format: %s", format));
        parent.applyFormat(format);
        return;
    } else if (commandType == mFocusTextInputCommandCode) {
        parent.requestFocusFromJS();
        return;
    } else if (commandType == mBlurTextInputCommandCode) {
        parent.clearFocusFromJS();
        return;
    }
    super.receiveCommand(parent, commandType, args);
}
 
源代码2 项目: Instabug-React-Native   文件: ArrayUtil.java
public static Object[] toArray(ReadableArray readableArray) {
    Object[] array = new Object[readableArray.size()];

    for (int i = 0; i < readableArray.size(); i++) {
        ReadableType type = readableArray.getType(i);

        switch (type) {
            case Null:
                array[i] = null;
                break;
            case Boolean:
                array[i] = readableArray.getBoolean(i);
                break;
            case Number:
                array[i] = readableArray.getDouble(i);
                break;
            case String:
                array[i] = readableArray.getString(i);
                break;
            case Map:
                array[i] = MapUtil.toMap(readableArray.getMap(i));
                break;
            case Array:
                array[i] = ArrayUtil.toArray(readableArray.getArray(i));
                break;
        }
    }

    return array;
}
 
/**
 * Returns the value at {@code index} if it exists, coercing it if
 * necessary.
 */
static String getString(ReadableArray array, int index, String defaultValue) {
    if (array == null){
        return defaultValue;
    }
    try {
        ReadableType type = array.getType(index);
        switch (type) {
            case Number:
                double value = array.getDouble(index);
                if (value == (long) value) {
                    return String.valueOf((long) value);
                } else {
                    return String.valueOf(value);
                }
            case Boolean:
                return String.valueOf(array.getBoolean(index));
            case String:
                return array.getString(index);
            case Null:
                return null;
            default:
                return defaultValue;
        }
    } catch(NoSuchKeyException ex){
        return defaultValue;
    }
}
 
源代码4 项目: google-signin   文件: Utils.java
@NonNull
static Scope[] createScopesArray(ReadableArray scopes) {
    int size = scopes.size();
    Scope[] _scopes = new Scope[size];

    for (int i = 0; i < size; i++) {
        String scopeName = scopes.getString(i);
        _scopes[i] = new Scope(scopeName);
    }
    return _scopes;
}
 
源代码5 项目: react-native-GPay   文件: NetworkingModule.java
/**
 * Extracts the headers from the Array. If the format is invalid, this method will return null.
 */
private @Nullable Headers extractHeaders(
    @Nullable ReadableArray headersArray,
    @Nullable ReadableMap requestData) {
  if (headersArray == null) {
    return null;
  }
  Headers.Builder headersBuilder = new Headers.Builder();
  for (int headersIdx = 0, size = headersArray.size(); headersIdx < size; headersIdx++) {
    ReadableArray header = headersArray.getArray(headersIdx);
    if (header == null || header.size() != 2) {
      return null;
    }
    String headerName = header.getString(0);
    String headerValue = header.getString(1);
    if (headerName == null || headerValue == null) {
      return null;
    }
    headersBuilder.add(headerName, headerValue);
  }
  if (headersBuilder.get(USER_AGENT_HEADER_NAME) == null && mDefaultUserAgent != null) {
    headersBuilder.add(USER_AGENT_HEADER_NAME, mDefaultUserAgent);
  }

  // Sanitize content encoding header, supported only when request specify payload as string
  boolean isGzipSupported = requestData != null && requestData.hasKey(REQUEST_BODY_KEY_STRING);
  if (!isGzipSupported) {
    headersBuilder.removeAll(CONTENT_ENCODING_HEADER_NAME);
  }

  return headersBuilder.build();
}
 
static Object get(ReadableArray array,int index,Object defaultValue){
    if (array == null){
        return defaultValue;
    }

    try {
        Object value = null;
        ReadableType type = array.getType(index);
        switch(type){
            case Boolean:
                value = array.getBoolean(index);
                break;
            case Number:
                value = array.getDouble(index);
                break;
            case String:
                value = array.getString(index);
                break;
            case Map:
                value = array.getMap(index);
                break;
            case Array:
                value = array.getArray(index);
                break;
            case Null:
                break;
        }
        return value;
    } catch (NoSuchKeyException ex){
        return defaultValue;
    }
}
 
/**
 * Returns the value at {@code index} if it exists, coercing it if
 * necessary.
 */
static String getString(ReadableArray array, int index, String defaultValue) {
    if (array == null){
        return defaultValue;
    }
    try {
        ReadableType type = array.getType(index);
        switch (type) {
            case Number:
                double value = array.getDouble(index);
                if (value == (long) value) {
                    return String.valueOf((long) value);
                } else {
                    return String.valueOf(value);
                }
            case Boolean:
                return String.valueOf(array.getBoolean(index));
            case String:
                return array.getString(index);
            case Null:
                return null;
            default:
                return defaultValue;
        }
    } catch(NoSuchKeyException ex){
        return defaultValue;
    }
}
 
public void clearDeliveredNotifications(ReadableArray identifiers) {
  NotificationManager notificationManager = notificationManager();
  for (int index = 0; index < identifiers.size(); index++) {
    String id = identifiers.getString(index);
    Log.i(LOG_TAG, "Removing notification with id " + id);
    notificationManager.cancel(Integer.parseInt(id));
  }
}
 
public static Object[] toArray(ReadableArray readableArray) {
    Object[] array = new Object[readableArray.size()];

    for (int i = 0; i < readableArray.size(); i++) {
        ReadableType type = readableArray.getType(i);

        switch (type) {
            case Null:
                array[i] = null;
                break;
            case Boolean:
                array[i] = readableArray.getBoolean(i);
                break;
            case Number:
                array[i] = readableArray.getDouble(i);
                break;
            case String:
                array[i] = readableArray.getString(i);
                break;
            case Map:
                array[i] = MapUtil.toMap(readableArray.getMap(i));
                break;
            case Array:
                array[i] = ArrayUtil.toArray(readableArray.getArray(i));
                break;
        }
    }

    return array;
}
 
static Object get(ReadableArray array,int index,Object defaultValue){
    if (array == null){
        return defaultValue;
    }

    try {
        Object value = null;
        ReadableType type = array.getType(index);
        switch(type){
            case Boolean:
                value = array.getBoolean(index);
                break;
            case Number:
                value = array.getDouble(index);
                break;
            case String:
                value = array.getString(index);
                break;
            case Map:
                value = array.getMap(index);
                break;
            case Array:
                value = array.getArray(index);
                break;
            case Null:
                break;
        }
        return value;
    } catch (NoSuchKeyException ex){
        return defaultValue;
    }
}
 
@ReactMethod
public void showActionSheetWithOptions(ReadableMap params, Callback callback) {
    final Activity currentActivity = getCurrentActivity();
    if (currentActivity == null || !(currentActivity instanceof ReactFragmentActivity)) {
        this.callback.invoke(RESULT_ERROR);
        return;
    }
    this.activity = (ReactFragmentActivity) currentActivity;
    this.callback = callback;
    int cancelButtonIndex = params.getInt("cancelButtonIndex");
    ReadableArray options = params.getArray("options");
    List<String> list = new ArrayList<>(options.size());
    String cancelButtonName = options.getString(cancelButtonIndex);

    for (int i = 0; i < options.size(); ++i) {
      String value = options.getString(i);
      if (!value.equals(cancelButtonName)) {
        list.add(value);
      }
    }

    String[] args = new String[list.size()];

    ActionSheet.createBuilder(context, activity.getSupportFragmentManager())
              .setCancelButtonTitle(cancelButtonName)
              .setOtherButtonTitles(list.toArray(args))
              .setCancelableOnTouchOutside(false)
              .setListener(this).show();
}
 
@ReactProp(name = "tabNames")
public void setTabNames(TabbedViewPager viewPager, ReadableArray readableArray) {
  String[] names = new String[readableArray.size()];
  for (int i = 0; i < readableArray.size(); i++) {
    names[i] = readableArray.getString(i);
  }
  viewPager.setTabNames(names);
}
 
源代码13 项目: react-native-lock   文件: OptionsHelper.java
public static ArrayList convertReadableArrayToArray(ReadableArray reactArray) {
    ArrayList<Object> array = new ArrayList<>();
    for (int i=0, size = reactArray.size(); i<size; ++i) {
        Object object = null;
        switch (reactArray.getType(i)) {
            case Array:
                object = convertReadableArrayToArray(reactArray.getArray(i));
                break;
            case Boolean:
                object = reactArray.getBoolean(i);
                break;
            case Map:
                object = convertReadableMapToMap(reactArray.getMap(i));
                break;
            case Null:
                object = null;
                break;
            case Number:
                try {
                    object = reactArray.getDouble(i);
                } catch (java.lang.ClassCastException e) {
                    object = reactArray.getInt(i);
                }
                break;
            case String:
                object = reactArray.getString(i);
                break;
            default:
                Log.e(TAG, "Unknown type: " + reactArray.getType(i) + " for index: " + i);
        }
        array.add(object);
    }
    return array;
}
 
public static String[] convertToStringArray(ReadableArray readableArray) {
    String[] array = new String[readableArray.size()];

    for (int i = 0; i < readableArray.size(); i++) {
        if (!ReadableType.String.equals(readableArray.getType(i))) {
            throw new IllegalArgumentException("Expecting array of strings");
        }
        array[i] = readableArray.getString(i);
    }

    return array;
}
 
源代码15 项目: art   文件: ARTTextShadowNode.java
@Override
public void draw(Canvas canvas, Paint paint, float opacity) {
  if (mFrame == null) {
    return;
  }
  opacity *= mOpacity;
  if (opacity <= MIN_OPACITY_FOR_DRAW) {
    return;
  }
  if (!mFrame.hasKey(PROP_LINES)) {
    return;
  }
  ReadableArray linesProp = mFrame.getArray(PROP_LINES);
  if (linesProp == null || linesProp.size() == 0) {
    return;
  }

  // only set up the canvas if we have something to draw
  saveAndSetupCanvas(canvas);
  String[] lines = new String[linesProp.size()];
  for (int i = 0; i < lines.length; i++) {
    lines[i] = linesProp.getString(i);
  }
  String text = TextUtils.join("\n", lines);
  if (setupStrokePaint(paint, opacity)) {
    applyTextPropertiesToPaint(paint);
    if (mPath == null) {
      canvas.drawText(text, 0, -paint.ascent(), paint);
    } else {
      canvas.drawTextOnPath(text, mPath, 0, 0, paint);
    }
  }
  if (setupFillPaint(paint, opacity)) {
    applyTextPropertiesToPaint(paint);
    if (mPath == null) {
      canvas.drawText(text, 0, -paint.ascent(), paint);
    } else {
      canvas.drawTextOnPath(text, mPath, 0, 0, paint);
    }
  }
  if (mShadowOpacity > 0) {
    paint.setShadowLayer(mShadowRadius, mShadowOffsetX, mShadowOffsetY, mShadowColor);
  }
  restoreCanvas(canvas);
  markUpdateSeen();
}
 
public WritableArray query(final String sql, final ReadableArray values) {
	WritableArray data = Arguments.createArray();

	// FLog.w(ReactConstants.TAG, "values.size()=%s", Integer.toString(values.size()));

	String[] args = new String[values.size()];
	// FLog.w(ReactConstants.TAG, "sqlitemanager.query.args.length=%d", args.length);

	for ( int i=0; i < values.size(); i++) {
		if (values.getType(i) == ReadableType.Number) {
			args[i] = Integer.toString(values.getInt(i));
		} else {
			args[i] = values.getString(i);
		}
	}

	Cursor cursor = db.rawQuery(sql, args);

	try {
		if (cursor.moveToFirst()) {
			do {
				WritableMap item = Arguments.createMap();
				for (int i=0; i < cursor.getColumnCount(); i++) {
					switch( cursor.getType(i) ) {
						case Cursor.FIELD_TYPE_INTEGER:
							item.putInt(cursor.getColumnName(i), cursor.getInt(i));
							break;
						default:
							item.putString(cursor.getColumnName(i), cursor.getString(i));
							break;
					}
				}

				data.pushMap(item);
			} while (cursor.moveToNext());
		}
	} catch (Exception e) {
		throw e;
	} finally {
		cursor.close();
	}

	return data;
}
 
源代码17 项目: aurora-imui   文件: ReactChatInputManager.java
@ReactProp(name = "customLayoutItems")
public void setCustomItems(ChatInputView chatInputView, ReadableMap map) {
    
    ReadableArray left = map.hasKey("left") ? map.getArray("left") : null;
    ReadableArray right = map.hasKey("right") ? map.getArray("right") : null;
    ReadableArray bottom = map.hasKey("bottom") ? map.getArray("bottom") : null;
    String[] bottomTags = new String[0];
    if (bottom != null && bottom.size()>1) {
        bottomTags = new String[bottom.size()];
        for (int i = 0; i < bottom.size(); i++) {
            bottomTags[i] = bottom.getString(i);
        }
        mInitialChatInputHeight = 100;
    }else {
        mInitialChatInputHeight = 56;
    }

    String[] leftTags = new String[0];
    if (left != null) {
        leftTags = new String[left.size()];
        for (int i = 0; i < left.size(); i++) {
            leftTags[i] = left.getString(i);
        }
    }

    String[] rightTags = new String[0];
    if (right != null) {
        rightTags = new String[right.size()];
        for (int i = 0; i < right.size(); i++) {
            rightTags[i] = right.getString(i);
        }
    }
    mChatInput.getMenuManager()
            .setMenu(Menu.newBuilder()
                    .customize(true)
                    .setLeft(leftTags)
                    .setRight(rightTags)
                    .setBottom(bottomTags)
                    .build());

}
 
源代码18 项目: react-native-lock   文件: ShowOptions.java
public ShowOptions(@Nullable ReadableMap options) {
    if (options == null) {
        return;
    }

    if (options.hasKey(CLOSABLE_KEY)) {
        closable = options.getBoolean(CLOSABLE_KEY);
        Log.d(TAG, CLOSABLE_KEY + closable);
    }

    if (options.hasKey(DISABLE_SIGNUP)) {
         disableSignUp = options.getBoolean(DISABLE_SIGNUP);
         Log.d(TAG, DISABLE_SIGNUP + disableSignUp);
    }

    if (options.hasKey(DISABLE_RESET_PASSWORD)) {
         disableResetPassword = options.getBoolean(DISABLE_RESET_PASSWORD);
         Log.d(TAG, DISABLE_RESET_PASSWORD + disableResetPassword);
    }

    if (options.hasKey(USE_MAGIC_LINK_KEY)) {
        useMagicLink = options.getBoolean(USE_MAGIC_LINK_KEY);
        Log.d(TAG, USE_MAGIC_LINK_KEY + useMagicLink);
    }

    if (options.hasKey(AUTH_PARAMS_KEY)) {
        ReadableMap reactMap = options.getMap(AUTH_PARAMS_KEY);
        authParams = OptionsHelper.convertReadableMapToMap(reactMap);
        Log.d(TAG, AUTH_PARAMS_KEY + authParams);
    }

    if (options.hasKey(CONNECTIONS_KEY)) {
        ReadableArray connections = options.getArray(CONNECTIONS_KEY);
        List<String> list = new ArrayList<>(connections.size());
        for (int i = 0; i < connections.size(); i++) {
            String connectionName = connections.getString(i);
            switch (connectionName) {
                case LockReactModule.CONNECTION_EMAIL:
                    connectionType = LockReactModule.CONNECTION_EMAIL;
                    break;
                case LockReactModule.CONNECTION_SMS:
                    connectionType = LockReactModule.CONNECTION_SMS;
                    break;
            }
            list.add(connectionName);
        }
        this.connections = new String[list.size()];
        this.connections = list.toArray(this.connections);
        Log.d(TAG, CONNECTIONS_KEY + list);
    }
}
 
@ReactMethod
public void promptWithArgs(ReadableMap options, final Callback callback) {
    final FragmentManagerHelper fragmentManagerHelper = getFragmentManagerHelper();
    if (fragmentManagerHelper == null) {
        FLog.w(RNPromptModule.class, "Tried to show an alert while not attached to an Activity");
        return;
    }

    final Bundle args = new Bundle();
    if (options.hasKey(KEY_TITLE)) {
        args.putString(RNPromptFragment.ARG_TITLE, options.getString(KEY_TITLE));
    }
    if (options.hasKey(KEY_MESSAGE)) {
        String message = options.getString(KEY_MESSAGE);
        if (!message.isEmpty()) {
            args.putString(RNPromptFragment.ARG_MESSAGE, options.getString(KEY_MESSAGE));
        }
    }
    if (options.hasKey(KEY_BUTTON_POSITIVE)) {
        args.putString(RNPromptFragment.ARG_BUTTON_POSITIVE, options.getString(KEY_BUTTON_POSITIVE));
    }
    if (options.hasKey(KEY_BUTTON_NEGATIVE)) {
        args.putString(RNPromptFragment.ARG_BUTTON_NEGATIVE, options.getString(KEY_BUTTON_NEGATIVE));
    }
    if (options.hasKey(KEY_BUTTON_NEUTRAL)) {
        args.putString(RNPromptFragment.ARG_BUTTON_NEUTRAL, options.getString(KEY_BUTTON_NEUTRAL));
    }
    if (options.hasKey(KEY_ITEMS)) {
        ReadableArray items = options.getArray(KEY_ITEMS);
        CharSequence[] itemsArray = new CharSequence[items.size()];
        for (int i = 0; i < items.size(); i++) {
            itemsArray[i] = items.getString(i);
        }
        args.putCharSequenceArray(RNPromptFragment.ARG_ITEMS, itemsArray);
    }
    if (options.hasKey(KEY_CANCELABLE)) {
        args.putBoolean(KEY_CANCELABLE, options.getBoolean(KEY_CANCELABLE));
    }
    if (options.hasKey(KEY_TYPE)) {
        args.putString(KEY_TYPE, options.getString(KEY_TYPE));
    }
    if (options.hasKey(KEY_STYLE)) {
        args.putString(KEY_STYLE, options.getString(KEY_STYLE));
    }
    if (options.hasKey(KEY_DEFAULT_VALUE)) {
        args.putString(KEY_DEFAULT_VALUE, options.getString(KEY_DEFAULT_VALUE));
    }
    if (options.hasKey(KEY_PLACEHOLDER)) {
        args.putString(KEY_PLACEHOLDER, options.getString(KEY_PLACEHOLDER));
    }
    fragmentManagerHelper.showNewAlert(mIsInForeground, args, callback);
}
 
@Override
public void receiveCommand(CustomTwilioVideoView view, int commandId, @Nullable ReadableArray args) {
    switch (commandId) {
        case CONNECT_TO_ROOM:
            String roomName = args.getString(0);
            String accessToken = args.getString(1);
            boolean enableAudio = args.getBoolean(2);
            boolean enableVideo = args.getBoolean(3);
            boolean enableRemoteAudio = args.getBoolean(4);
            view.connectToRoomWrapper(roomName, accessToken, enableAudio, enableVideo, enableRemoteAudio);
            break;
        case DISCONNECT:
            view.disconnect();
            break;
        case SWITCH_CAMERA:
            view.switchCamera();
            break;
        case TOGGLE_VIDEO:
            Boolean videoEnabled = args.getBoolean(0);
            view.toggleVideo(videoEnabled);
            break;
        case TOGGLE_SOUND:
            Boolean audioEnabled = args.getBoolean(0);
            view.toggleAudio(audioEnabled);
            break;
        case GET_STATS:
            view.getStats();
            break;
        case DISABLE_OPENSL_ES:
            view.disableOpenSLES();
            break;
        case TOGGLE_SOUND_SETUP:
            Boolean speaker = args.getBoolean(0);
            view.toggleSoundSetup(speaker);
            break;
        case TOGGLE_REMOTE_SOUND:
            Boolean remoteAudioEnabled = args.getBoolean(0);
            view.toggleRemoteAudio(remoteAudioEnabled);
            break;
        case RELEASE_RESOURCE:
            view.releaseResource();
            break;
        case TOGGLE_BLUETOOTH_HEADSET:
            Boolean headsetEnabled = args.getBoolean(0);
            view.toggleBluetoothHeadset(headsetEnabled);
            break;
        case SEND_STRING:
            view.sendString(args.getString(0));
            break;
    }
}