private void collectDeviceInfos() {
		try {
			PackageInfo packageInfo = context.getPackageManager()
					.getPackageInfo(context.getPackageName(), 0);
			crashInfos.put("versionName", packageInfo.versionName);
			crashInfos.put("versionCode", packageInfo.versionCode + "");

		} catch (NameNotFoundException e) {
			Log.e(TAG, "collectDeviceInfos error:NameNotFoundException");
		}
		Field[] fields = Build.class.getDeclaredFields();
		for (Field field : fields) {
			try {
				field.setAccessible(true);
				crashInfos.put(field.getName(), field.get(null).toString());
				// Log.d(TAG, field.getName() + " : " + field.get(null));
			} catch (Exception e) {
				Log.e(TAG, "an error occured when collect crash info", e);
			}
		}
	}