NIMSDK-AOS 10.4.0-beta
载入中...
搜索中...
未找到
CaptureDeviceInfoConfig.java
浏览该文件的文档.
1package com.netease.nimlib.sdk.msg.model;
2
3import android.os.Parcel;
4import android.os.Parcelable;
5
6import androidx.annotation.Nullable;
7
8import org.json.JSONException;
9import org.json.JSONObject;
10
11import java.io.Serializable;
12
13/**
14 * 获取设备信息的配置
15 *
16 * @author chenjili
17 * @date 20210622
18 */
19public class CaptureDeviceInfoConfig implements Serializable, Parcelable {
20 public static final String KEY_CAPTURE_MODEL = "KEY_CAPTURE_MODEL";
21 public static final String KEY_CAPTURE_MANUFACTURER = "KEY_CAPTURE_MANUFACTURER";
22 public static final String KEY_CAPTURE_BRAND = "KEY_CAPTURE_BRAND";
23
24 private final boolean captureModel;
25 private final boolean captureManufacturer;
26 private final boolean captureBrand;
27
28 public CaptureDeviceInfoConfig(boolean captureModel, boolean captureManufacturer, boolean captureBrand) {
29 this.captureModel = captureModel;
30 this.captureManufacturer = captureManufacturer;
31 this.captureBrand = captureBrand;
32 }
33
34 /**
35 * 是否获取产品型号
36 *
37 * @return true:获取;false:不获取。
38 */
39 public boolean isCaptureModel() {
40 return captureModel;
41 }
42
43 /**
44 * 是否获取制造商信息。
45 *
46 * @return true:获取;false:不获取。
47 */
48 public boolean isCaptureManufacturer() {
49 return captureManufacturer;
50 }
51
52 /**
53 * 是否获取品牌信息。
54 *
55 * @return true:获取;false:不获取。
56 */
57 public boolean isCaptureBrand() {
58 return captureBrand;
59 }
60
61 public CaptureDeviceInfoConfig(Parcel in) {
62 captureModel = in.readInt() > 0;
63 captureManufacturer = in.readInt() > 0;
64 captureBrand = in.readInt() > 0;
65 }
66
67 @Override
68 public int describeContents() {
69 return 0;
70 }
71
72 @Override
73 public void writeToParcel(Parcel dest, int flags) {
74 dest.writeInt(captureModel ? 1 : 0);
75 dest.writeInt(captureManufacturer ? 1 : 0);
76 dest.writeInt(captureBrand ? 1 : 0);
77 }
78
79 public static final Creator<CaptureDeviceInfoConfig> CREATOR = new Creator<CaptureDeviceInfoConfig>() {
80 @Override
81 public CaptureDeviceInfoConfig createFromParcel(Parcel in) {
82 return new CaptureDeviceInfoConfig(in);
83 }
84
85 @Override
86 public CaptureDeviceInfoConfig[] newArray(int size) {
87 return new CaptureDeviceInfoConfig[size];
88 }
89 };
90
91 public JSONObject toJson() {
92 JSONObject object = new JSONObject();
93 try {
94 object.putOpt(KEY_CAPTURE_MODEL, captureModel);
95 object.putOpt(KEY_CAPTURE_MANUFACTURER, captureManufacturer);
96 object.putOpt(KEY_CAPTURE_BRAND, captureBrand);
97 } catch (JSONException e) {
98 e.printStackTrace();
99 }
100 return object;
101 }
102
103 public static CaptureDeviceInfoConfig fromJson(@Nullable JSONObject object) {
104 if (object == null) {
105 return null;
106 }
107
108 final boolean captureModel = object.optBoolean(KEY_CAPTURE_MODEL, false);
109 final boolean captureManufacturer = object.optBoolean(KEY_CAPTURE_MANUFACTURER, false);
110 final boolean captureBrand = object.optBoolean(KEY_CAPTURE_BRAND, false);
111 return new CaptureDeviceInfoConfig(captureModel, captureManufacturer, captureBrand);
112 }
113}
CaptureDeviceInfoConfig(boolean captureModel, boolean captureManufacturer, boolean captureBrand)
boolean isCaptureManufacturer()
是否获取制造商信息。
static final Creator< CaptureDeviceInfoConfig > CREATOR
static CaptureDeviceInfoConfig fromJson(@Nullable JSONObject object)