我有什么:
a new version of software is available
或you can't use the application before it willn't be updated
。但是,并非所有用户都可以使用此功能。我需要什么:
1.1.1
,并且仅当该应用程序具有版本1.1.2
时才使用新的修改) 。修改可以多种多样。我能做什么:
Filter
,添加修改,修改和特殊参数的类型,并通过表Filter
中的值修改函数。
在我看来,所有这些方式都像是肮脏的骇客。我想知道有什么方法可以做得更好。有没有人遇到过这样的问题,并且有一个更好的解决方案的好主意?谢谢。
答案 0 :(得分:0)
通常WITH latest_partitiontime AS (SELECT _PARTITIONTIME as pt FROM
`{project}.{dataset}.{table}`
GROUP BY _PARTITIONTIME
ORDER BY _PARTITIONTIME DESC
LIMIT 1)
SELECT {columns}
FROM `{project}.{dataset}.{table}`
WHERE _PARTITIONTIME >= (SELECT pt FROM latest_partitiontime)
并不是很好的方法,但是如果您确实需要,可以将SELECT {columns}
FROM `{project}.{dataset}.{table}`
WHERE _PARTITIONTIME >= '2018-08-08'
标头放入所有对服务器的请求中,并在服务器上(服务器上)创建一个过滤器对使用小于您想要的应用版本的所有请求返回特定错误。然后,您可以在应用中处理此特定错误并显示force to update
。
您还可以版本User-Agent
。假设您在screen of death
端点的响应中添加了新字段。因此API
可以调用/users
,而v1.1.1
可以与/v1/users
一起使用。
通常的想法是,客户端应用程序非常轻巧,由服务器决定返回什么内容和如何返回。