Skip to content

Commit 0f12e59

Browse files
committed
【ID868776255】App数据隐私合规整改--中国大陆仅仅提供18周岁以上成年人使用。
http://tapd.oa.com/NEW_IOT/prong/stories/view/1020393192868776255 Change-Id: Ieccfe2a577c86d5f24378f1b4e714e1caae3cf25
1 parent 006c5a2 commit 0f12e59

File tree

6 files changed

+71
-26
lines changed

6 files changed

+71
-26
lines changed

app/src/main/java/com/tencent/iot/explorer/link/kitlink/activity/ChooseCountryActivity.kt

Lines changed: 56 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,16 @@ class ChooseCountryActivity : PActivity(), ChooseCountryView, View.OnClickListen
6161
tv_register_to_country.text = countryName + getString(R.string.conutry_code_num, countryCode)
6262
}
6363

64-
private fun shouldShowBirthdayDlg(): Boolean {
65-
var lastTimeJson = Utils.getStringValueFromXml(this@ChooseCountryActivity, CommonField.USA_USER_REG_TIME_INFO, CommonField.USA_USER_REG_TIME_INFO)
64+
private fun shouldShowBirthdayDlg(countryCode: String): Boolean {
65+
var lastTimeJson: String?
66+
if (countryCode == "1") {
67+
lastTimeJson = Utils.getStringValueFromXml(this@ChooseCountryActivity, CommonField.USA_USER_REG_TIME_INFO, CommonField.USA_USER_REG_TIME_INFO)
68+
} else if (countryCode == "86") {
69+
lastTimeJson = Utils.getStringValueFromXml(this@ChooseCountryActivity, CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO, CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO)
70+
} else {
71+
return false
72+
}
73+
6674
// 不存在上一次的注册信息
6775
if (TextUtils.isEmpty(lastTimeJson) || lastTimeJson == "{}") return true
6876

@@ -71,9 +79,18 @@ class ChooseCountryActivity : PActivity(), ChooseCountryView, View.OnClickListen
7179
var currentYear = currentDate.year + 1900
7280
var currentMonth = currentDate.month + 1
7381
var currentDay = currentDate.day
74-
var tagYear = json.getIntValue(CommonField.USA_USER_REG_TIME_INFO_YEAR)
75-
var tagMonth = json.getIntValue(CommonField.USA_USER_REG_TIME_INFO_MONTH)
76-
var tagDay = json.getIntValue(CommonField.USA_USER_REG_TIME_INFO_DAY)
82+
var tagYear = 0
83+
var tagMonth = 0
84+
var tagDay = 0
85+
if (countryCode == "1") {
86+
tagYear = json.getIntValue(CommonField.USA_USER_REG_TIME_INFO_YEAR)
87+
tagMonth = json.getIntValue(CommonField.USA_USER_REG_TIME_INFO_MONTH)
88+
tagDay = json.getIntValue(CommonField.USA_USER_REG_TIME_INFO_DAY)
89+
} else if (countryCode == "86") {
90+
tagYear = json.getIntValue(CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO_YEAR)
91+
tagMonth = json.getIntValue(CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO_MONTH)
92+
tagDay = json.getIntValue(CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO_DAY)
93+
}
7794
if (currentYear - tagYear > 0 && currentMonth - tagMonth == 0 && currentDay - tagDay == 0) { // 满周年
7895
return true
7996
}
@@ -95,15 +112,26 @@ class ChooseCountryActivity : PActivity(), ChooseCountryView, View.OnClickListen
95112
}
96113

97114
private fun showBirthDayDlg() {
98-
if (presenter.getCountryCode() == "1" && shouldShowBirthdayDlg()) {
115+
val countryCode = presenter.getCountryCode()
116+
if (shouldShowBirthdayDlg(countryCode)) {
99117
var dlg = InputBirthdayDialog(this@ChooseCountryActivity)
100118
dlg.show()
101119
dlg.setOnDismissListener(object: InputBirthdayDialog.OnDismisListener {
102120
override fun onOkClicked(year: Int, month: Int, day: Int) {
121+
var age = 0
122+
if (countryCode == "1") {
123+
age = 13
124+
} else if (countryCode == "86") {
125+
age = 18
126+
}
103127

104-
// 是否满13周岁
105-
if (!ifOver13YearsOld(year, month, day)) {
106-
T.show(resources.getString(R.string.too_young_to_use))
128+
// 是否满age周岁
129+
if (!ifOverAge(age, year, month, day)) {
130+
if (countryCode == "1") {
131+
T.show(resources.getString(R.string.usa_too_young_to_use))
132+
} else if (countryCode == "86") {
133+
T.show(resources.getString(R.string.mainland_too_young_to_use))
134+
}
107135
finish()
108136
return
109137
}
@@ -113,26 +141,36 @@ class ChooseCountryActivity : PActivity(), ChooseCountryView, View.OnClickListen
113141
var currentYear = currentDate.year + 1900
114142
var currentMonth = currentDate.month + 1
115143
var currentDay = currentDate.day
116-
// 记录本次使用的日期
117-
timeJson.put(CommonField.USA_USER_REG_TIME_INFO_YEAR, currentYear)
118-
timeJson.put(CommonField.USA_USER_REG_TIME_INFO_MONTH, currentMonth)
119-
timeJson.put(CommonField.USA_USER_REG_TIME_INFO_DAY, currentDay)
120-
Utils.setXmlStringValue(T.getContext(), CommonField.USA_USER_REG_TIME_INFO,
121-
CommonField.USA_USER_REG_TIME_INFO, timeJson.toJSONString())
144+
145+
if (countryCode == "1") {
146+
// 记录本次使用的日期
147+
timeJson.put(CommonField.USA_USER_REG_TIME_INFO_YEAR, currentYear)
148+
timeJson.put(CommonField.USA_USER_REG_TIME_INFO_MONTH, currentMonth)
149+
timeJson.put(CommonField.USA_USER_REG_TIME_INFO_DAY, currentDay)
150+
Utils.setXmlStringValue(T.getContext(), CommonField.USA_USER_REG_TIME_INFO,
151+
CommonField.USA_USER_REG_TIME_INFO, timeJson.toJSONString())
152+
} else if (countryCode == "86") {
153+
// 记录本次使用的日期
154+
timeJson.put(CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO_YEAR, currentYear)
155+
timeJson.put(CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO_MONTH, currentMonth)
156+
timeJson.put(CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO_DAY, currentDay)
157+
Utils.setXmlStringValue(T.getContext(), CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO,
158+
CommonField.CHINA_MAINLAND_USER_REG_TIME_INFO, timeJson.toJSONString())
159+
}
122160
}
123161

124162
override fun onCancelClicked() { finish() }
125163
})
126164
}
127165
}
128166

129-
private fun ifOver13YearsOld(year: Int, month: Int, day: Int): Boolean {
167+
private fun ifOverAge(age: Int,year: Int, month: Int, day: Int): Boolean {
130168
var currentDate = Date()
131169
var currentYear = currentDate.year + 1900
132170
var currentMonth = currentDate.month + 1
133171
var currentDay = currentDate.day
134-
if (currentYear - year < 13 || (currentYear - year == 13 && currentMonth - month < 0) ||
135-
(currentYear - year == 13 && currentMonth - month == 0 && currentDay - day < 0)) {
172+
if (currentYear - year < age || (currentYear - year == age && currentMonth - month < 0) ||
173+
(currentYear - year == age && currentMonth - month == 0 && currentDay - day < 0)) {
136174
return false
137175
}
138176
return true

app/src/main/java/com/tencent/iot/explorer/link/kitlink/activity/RegisterActivity.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,7 @@ class RegisterActivity : PActivity(), RegisterView, View.OnClickListener {
460460

461461
// 是否满13周岁
462462
if (!ifOver13YearsOld(year, month, day)) {
463-
T.show(resources.getString(R.string.too_young_to_use))
463+
T.show(resources.getString(R.string.usa_too_young_to_use))
464464
finish()
465465
return
466466
}

app/src/main/java/com/tencent/iot/explorer/link/kitlink/consts/CommonField.kt

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,14 @@ object CommonField {
9696
/*************** 注册 ****************/
9797
const val TYPE = "Type"
9898
const val REG_COUNTRY_INFO = "RegCountryInfo"
99-
const val USA_USER_REG_TIME_INFO = "RegTimeInfo"
100-
const val USA_USER_REG_TIME_INFO_YEAR = "RegTimeInfoYear"
101-
const val USA_USER_REG_TIME_INFO_MONTH = "RegTimeInfoMonth"
102-
const val USA_USER_REG_TIME_INFO_DAY = "RegTimeInfoDay"
99+
const val USA_USER_REG_TIME_INFO = "USARegTimeInfo"
100+
const val USA_USER_REG_TIME_INFO_YEAR = "USARegTimeInfoYear"
101+
const val USA_USER_REG_TIME_INFO_MONTH = "USARegTimeInfoMonth"
102+
const val USA_USER_REG_TIME_INFO_DAY = "USARegTimeInfoDay"
103+
const val CHINA_MAINLAND_USER_REG_TIME_INFO = "ChinaMainlandRegTimeInfo"
104+
const val CHINA_MAINLAND_USER_REG_TIME_INFO_YEAR = "ChinaMainlandRegTimeInfoYear"
105+
const val CHINA_MAINLAND_USER_REG_TIME_INFO_MONTH = "ChinaMainlandRegTimeInfoMonth"
106+
const val CHINA_MAINLAND_USER_REG_TIME_INFO_DAY = "ChinaMainlandRegTimeInfoDay"
103107
const val COUNTRY_INFO = "CountryInfo"
104108
const val COUNTRY_CODE = "CountryCode"
105109
const val AGREED_RULE_FLAG = "agreeRule"

app/src/main/res/values-en-rUS/strings.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@
171171
<string name="not_install_wechat_client">WeChat is not installed. Try again after you install WeChat.</string>
172172
<string name="cancel_wechat">Deauthorize</string>
173173
<string name="input_birthday_for_better_react">Date of Birth</string>
174-
<string name="too_young_to_use"> Sorry. Tencent LianLian is not available.</string>
174+
<string name="usa_too_young_to_use">Because you are under 13 years old, you cannot use our products and services temporarily.</string>
175+
<string name="mainland_too_young_to_use">Because you are under 18 years old, you cannot use our products and services temporarily.</string>
175176
<string name="location_failed">Positioning failed </string>
176177

177178
<string name="login">Log In</string>

app/src/main/res/values-zh-rCN/strings.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@
171171
<string name="not_install_wechat_client">微信未安装,请安装后重试</string>
172172
<string name="cancel_wechat">取消授权</string>
173173
<string name="input_birthday_for_better_react">出生日期</string>
174-
<string name="too_young_to_use">很遗憾,我们目前无法向您提供腾讯连连</string>
174+
<string name="usa_too_young_to_use">由于您未满十三周岁,暂无法使用我们的产品服务。</string>
175+
<string name="mainland_too_young_to_use">由于您未满十八周岁,暂无法使用我们的产品服务。</string>
175176
<string name="location_failed">定位失败</string>
176177

177178
<string name="login">登录</string>

app/src/main/res/values/strings.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,8 @@
171171
<string name="not_install_wechat_client">微信未安装,请安装后重试</string>
172172
<string name="cancel_wechat">取消授权</string>
173173
<string name="input_birthday_for_better_react">出生日期</string>
174-
<string name="too_young_to_use">很遗憾,我们目前无法向您提供腾讯连连</string>
174+
<string name="usa_too_young_to_use">由于您未满十三周岁,暂无法使用我们的产品服务。</string>
175+
<string name="mainland_too_young_to_use">由于您未满十八周岁,暂无法使用我们的产品服务。</string>
175176
<string name="location_failed">定位失败</string>
176177

177178
<string name="login">登录</string>

0 commit comments

Comments
 (0)