SELECT data_key, data_value
FROM xf_data_registry
WHERE data_key IN ('options', 'languages', 'contentTypes', 'codeEventListeners', 'deferredRun', 'simpleCache', 'addOns', 'defaultStyleProperties', 'routeFiltersIn', 'routeFiltersOut', 'routesPublic', 'nodeTypes', 'bannedIps', 'discouragedIps', 'styles', 'displayStyles', 'userBanners', 'smilies', 'bbCode', 'threadPrefixes', 'userTitleLadder', 'reportCounts', 'moderationCounts', 'userModerationCounts', 'notices', 'userFieldsInfo')
Run Time: 0.000497
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_data_registry | range | PRIMARY | PRIMARY | 27 | | 26 | Using where |
SELECT data_key, data_value
FROM xf_data_registry
WHERE data_key IN ('brListenerClasses', 'brBriviumAddOns')
Run Time: 0.000147
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_data_registry | range | PRIMARY | PRIMARY | 27 | | 2 | Using where |
SELECT *
FROM xf_brivium_addon
ORDER BY addon_id
Run Time: 0.000145
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_brivium_addon | index | | PRIMARY | 77 | | 1 | |
INSERT INTO xf_data_registry
(data_key, data_value)
VALUES
(?, ?)
ON DUPLICATE KEY UPDATE
data_value = VALUES(data_value)
Params: brBriviumAddOns, a:0:{}
Run Time: 0.000129
SELECT cache_value
FROM xf_permission_combination
WHERE permission_combination_id = ?
Params: 1
Run Time: 0.000145
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_permission_combination | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SELECT thread.*
,
user.gender, user.avatar_date, user.gravatar,
NULL AS thread_read_date,
0 AS thread_reply_banned,
0 AS thread_is_watched,
'' AS draft_message, NULL AS draft_extra
FROM xf_thread AS thread
LEFT JOIN xf_user AS user ON
(user.user_id = thread.user_id)
WHERE thread.thread_id = ?
Params: 281161
Run Time: 0.000563
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | thread | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | user | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SELECT node.*, forum.*
,
permission.cache_value AS node_permission_cache,
NULL AS forum_read_date
FROM xf_forum AS forum
INNER JOIN xf_node AS node ON (node.node_id = forum.node_id)
LEFT JOIN xf_permission_cache_content AS permission
ON (permission.permission_combination_id = 1
AND permission.content_type = 'node'
AND permission.content_id = forum.node_id)
WHERE node.node_id = ?
Params: 25
Run Time: 0.000379
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | forum | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | node | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | permission | const | PRIMARY | PRIMARY | 35 | const,const,const | 1 | |
SELECT post.*
,
thread.*, thread.user_id AS thread_user_id, thread.username AS thread_username,
thread.post_date AS thread_post_date,
post.user_id, post.username, post.post_date,
bb_code_parse_cache.parse_tree AS message_parsed, bb_code_parse_cache.cache_version AS message_cache_version,
user.*, IF(user.username IS NULL, post.username, user.username) AS username,
user_profile.*,
user_privacy.*,
signature_parse_cache.parse_tree AS signature_parsed, bb_code_parse_cache.cache_version AS signature_cache_version,
session_activity.view_date AS last_view_date,
0 AS like_date
FROM xf_post AS post
INNER JOIN xf_thread AS thread ON
(thread.thread_id = post.thread_id)
LEFT JOIN xf_bb_code_parse_cache AS bb_code_parse_cache ON
(bb_code_parse_cache.content_type = 'post' AND bb_code_parse_cache.content_id = post.post_id)
LEFT JOIN xf_user AS user ON
(user.user_id = post.user_id)
LEFT JOIN xf_user_profile AS user_profile ON
(user_profile.user_id = post.user_id)
LEFT JOIN xf_user_privacy AS user_privacy ON
(user_privacy.user_id = post.user_id)
LEFT JOIN xf_bb_code_parse_cache AS signature_parse_cache ON
(signature_parse_cache.content_type = 'signature' AND signature_parse_cache.content_id = post.user_id)
LEFT JOIN xf_session_activity AS session_activity ON
(post.user_id > 0 AND session_activity.user_id = post.user_id AND session_activity.unique_key = CAST(post.user_id AS BINARY))
WHERE (
(post.thread_id = ? AND (post.position >= 0 AND post.position < 10) )
)
AND (post.message_state IN ('visible'))
ORDER BY post.position ASC, post.post_date ASC
Params: 281161
Run Time: 0.002469
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | thread | const | PRIMARY | PRIMARY | 4 | const | 1 | Using filesort |
SIMPLE | post | ref | thread_id_post_date,thread_id_position | thread_id_post_date | 4 | const | 1 | Using index condition; Using where |
SIMPLE | bb_code_parse_cache | eq_ref | content_type_id | content_type_id | 31 | const,xenforo.cc.post.post_id | 1 | Using where |
SIMPLE | user | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | user_profile | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | user_privacy | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | signature_parse_cache | eq_ref | content_type_id | content_type_id | 31 | const,xenforo.cc.post.user_id | 1 | Using where |
SIMPLE | session_activity | eq_ref | PRIMARY | PRIMARY | 22 | xenforo.cc.post.user_id,func | 1 | Using where |
INSERT INTO xf_thread_view
(thread_id)
VALUES
(?)
Params: 281161
Run Time: 0.000089
INSERT INTO `xf_session` (`session_id`, `session_data`, `expiry_date`) VALUES (?, ?, ?)
Params: 0d7424366b9124794872dc6d4e0c6bfe, , 1714401489
Run Time: 0.000672
INSERT INTO xf_session_activity
(user_id, unique_key, ip, controller_name, controller_action, view_state, params, view_date, robot_key)
VALUES
(?, ?, ?, ?, ?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE
ip = VALUES(ip),
controller_name = VALUES(controller_name),
controller_action = VALUES(controller_action),
view_state = VALUES(view_state),
params = VALUES(params),
view_date = VALUES(view_date),
robot_key = VALUES(robot_key)
Params: 0, , , XenForo_ControllerPublic_Thread, Index, valid, thread_id=281161, 1714397889,
Run Time: 0.000105
INSERT INTO xf_bb_code_parse_cache
(content_type, content_id, parse_tree, cache_version, cache_date)
VALUES (?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE parse_tree = VALUES(parse_tree),
cache_version = VALUES(cache_version),
cache_date = VALUES(cache_date)
Params: post, 287334, a:29:{i:0;s:388:"三星S8或许是三星至今为止最具颠覆性的手机。18.5:9的屏幕和84%的屏占比让人第一眼就能印象深刻,加上三星这一年以来的各种事件,使得这部手机的关注度也变得足够高。三星S8也是至今为止最能引起行业跟进的一部手机,在我们上手美版S8之后,或许有些设计上的细节依然值得我们讨论。
";i:1;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:65:"http://static.cnbetacdn.com/article/2017/0410/4792de2901a4cc7.jpg";}}i:2;s:2:"
";i:3;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:37:"1、特殊屏幕比例适配成问题";}}i:4;s:711:"
18.5:9的特殊屏幕比例意味着很多软件都需要依照三星的特殊比例重新进行相关布局设计,否则你将看到的是大大的黑边。在体验美版的时候,国内常用的软件诸如QQ音乐、微博已经实现了18.5:9的适应,但微信这样的必备软件依然在上下两头有大大的黑边。黑边部分的屏幕空间相当于浪费了,而且还影响了使用时的操作感。因此如果三星想要将这块屏幕利用起来,恐怕与第三方软件进行适配合作会成为关键。
最终呈现效果得看三星能够给出怎样的解决方案,如果依赖第三方软件自行适配,那么一些小众的软件可能就会成为鸡肋。
";i:5;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:30:"2、3000 / 3500mAh电池容量";}}i:6;s:314:"
这并不是一个让人感到安稳的数字,尽管S6和S7的电池容量也不高但做到了优异的续航,但S8硕大的屏幕还是让人对这个数字颇为担忧。
另外别忘了S8常常需要调动虹膜识别等功能,这些都是耗电的大户,因此最终的续航依然有待考验。
";i:7;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:40:"3、底部操作交互利用并不充分";}}i:8;s:437:"
使用大屏手机的朋友都知道,手机操作的核心区域是手机下半部分,尤其是一些需要单手操作的场景对大屏幕手机的优化更是必要。因此很多手机厂商在UI设计时都会考虑在底部进行一些功能聚合,比较典型的有苹果的iOS以及vivo等,通过上划一些快捷操作设置可以被调出。
但是拥有超长机身的S8并没有在底部的操作进行优化。
";i:9;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:65:"http://static.cnbetacdn.com/article/2017/0410/a136246128031bf.jpg";}}i:10;s:2:"
";i:11;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:31:"4、缺少单手操作的优化";}}i:12;s:117:"
没有下拉悬停也没有单手模式,S8的顶部操作无疑会变得比以往的大屏手机更加艰难。
";i:13;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:25:"5、指纹识别成鸡肋";}}i:14;s:2:"
";i:15;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:65:"http://static.cnbetacdn.com/article/2017/0410/48d628e25709a19.jpg";}}i:16;s:636:"
这成为整个硬件部分最大的吐槽点,三星S8的指纹识别位于背部摄像头右侧。考虑屏占比不放置在前端就算了,竟然后置指纹识别还不居中??!!
我们通常使用手机时用左右手解锁的情况都存在,只是比例不同而已,但是三星这个做法无疑会让每次左右手的解锁体验都存在差异,且都需要消耗时间去寻找位置。同时,每一次解锁都异常容易接触到背部的镜头,镜头更加容易弄脏而影响拍摄。
解锁是手机操作的高频使用功能,对于这一点而言,三星S8的体验是一定不好的。
";i:17;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:28:"6、虹膜识别效率不高";}}i:18;s:2:"
";i:19;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:65:"http://static.cnbetacdn.com/article/2017/0410/c6456bd778d94af.png";}}i:20;s:940:"
如果你说三星还有绝招那就是具有实际使用价值的虹膜识别,那我也劝你早点打消这个念头。虹膜识别在三星的两款产品的应用下(上一代Note 7炸了……)的确有了一定的可使用性,但是虹膜识别的便利性依然是指纹解锁达不到的。
首先,虹膜识别需要点亮屏幕后再用眼睛对准屏幕使用,光这一点就输了。
指纹识别是可以在息屏情况下直接触发的。
同时,虹膜识别耗时至少在可感知的1s以上的时间对于动辄0点几秒就解锁的指纹识别而言慢了不少。
再一点,虹膜识别对场景要求更加苛刻,需要眼睛离屏幕在一定的距离范围内,最好别戴眼睛,甚至如果你在运动甚至走路而导致一定的晃动,这个识别都无法进行。
所以在体验过程中,我逐渐放弃了三星S8的任何生物解锁方式,而开始用原始的pin码。
";i:21;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:37:"7、底部Type-C接口不居中对称";}}i:22;s:114:"
对,三星S8的Type-C接口并没有居中,对于硬件上来讲,这一点算是一个小小的遗憾。
";i:23;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:65:"http://static.cnbetacdn.com/article/2017/0410/79afc12740752b9.jpg";}}i:24;s:2:"
";i:25;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:27:"8、Bixby存在隐私隐患";}}i:26;s:357:"
这一点其实是一个软件上考虑的遗漏。三星S8为Bixby提升了极大的优先级,使得机身自带一个Bixby实体键。但是在息屏情况下,如果你按动Bixby实体键,它会自动跳转到聚合卡片页面,尽管你没有办法进行进一步的操作,但是聚合的小卡片里有你的行程或者酒店预订哦。
";i:27;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:66:"http://static.cnbetacdn.com/article/2017/0410/9fc31fac2087e33.jpeg";}}i:28;s:472:"
硬件设计时非常遵循木桶理论,长处很长或许能够让人惊艳,但真正决定使用体验的是短版有多短。比如再好的硬件设备或许续航不佳、拍照不好、交互太差、UI太丑,一个点上的缺位都有可能导致最后的失利。
以上盘点的关于S8的问题会不会在本月末三星S8国内发布之后有改观呢?硬件上的我们就不要再想了,但是软件上、交互上的改进还是值得期待。";}, 1621686945, 1714397889
Run Time: 0.001033