public void bindTag()

in android/src/main/java/com/aliyun/ams/push/AliyunPushModule.java [274:313]


	public void bindTag(ReadableArray tagsArr, int target, String alias, Promise promise) {
		WritableMap result = new WritableNativeMap();
		if (tagsArr == null) {
			result.putString(CODE_KEY, CODE_PARAM_ILLEGAL);
			result.putString(ERROR_MSG_KEY, "tags can not be empty");
			promise.resolve(result);
			return;
		}
		ArrayList<Object> tags = tagsArr.toArrayList();
		if (tags.isEmpty()) {
			result.putString(CODE_KEY, CODE_PARAM_ILLEGAL);
			result.putString(ERROR_MSG_KEY, "tags can not be empty");
			promise.resolve(result);
		} else {
			if (target != 1 && target != 2 && target != 3) {
				// 默认本设备
				target = 1;
			}
			String[] tagsArray = new String[tags.size()];
			for (int i = 0; i < tags.size(); i++) {
				String tag = (String)tags.get(i);
				tagsArray[i] = tag;
			}
			final CloudPushService pushService = PushServiceFactory.getCloudPushService();
			pushService.bindTag(target, tagsArray, alias, new CommonCallback() {
				@Override
				public void onSuccess(String response) {
					result.putString(CODE_KEY, CODE_SUCCESS);
					promise.resolve(result);
				}

				@Override
				public void onFailed(String errorCode, String errorMsg) {
					result.putString(CODE_KEY, errorCode);
					result.putString(ERROR_MSG_KEY, errorMsg);
					promise.resolve(result);
				}
			});
		}
	}