Skip to content
王集鹄 edited this page May 4, 2014 · 1 revision

背景

移动端为降低耗电

被动发送的示例

NLog.init(
		context,
		"autoSend=", false, // 是否自动发送,不使用时间轮询
		"onCreateSession=", new NLog.EventListener() { // 重新创建session时触发
			@Override
			public void onHandler(Map<String, Object> map) {
			}

		}, "onDestorySession=", new NLog.EventListener() {
			@Override
			public void onHandler(Map<String, Object> map) {
			}
		}, "onReport=", new NLog.EventListener() { // 数据上报时发生
			@Override
			public void onHandler(Map<String, Object> map) {
				@SuppressWarnings("unchecked")
				Map<String, Object> data = (Map<String, Object>) map
						.get("data");
				if (!"pv".equals(map.get("name"))) { // tracker 名不是 pv 时,采用被动发送
					data.put("passiveSend", true); // 标记被动发送
				}
			}
		}
);

通过给上报的日志打上 passiveSend 的标记

Clone this wiki locally