2017-11-25 159 views
1

我在Google應用中設置了一項操作,其中我要求用戶提供權限。一切正常。現在我想在第一次對話中詢問用戶的許可。當他第二次開始對話時,動作應用程序應該記住,此用戶之前已在對話中授予了權限。所以當用戶每次開始交談時都不需要接受許可時,它就更加舒適。有什麼辦法可以做到這一點嗎?在Google應用上的操作中保存所有對話中授予的權限

回答

1

簡答:你不行。

但是,對於某些事情你不一定需要這樣做。例如,如果你要求提供他們的名字 - 它可能不會改變,所以你可以第一次問這個問題,然後緩存答案。

如果您使用的是node.js庫,則可以通過將信息添加到app.userStorage對象來輕鬆完成此操作。這將在會話之間爲您保存。所以,你的代碼可能是這個樣子:

var userName = app.userStorage.userName; 
if(!userName){ 
    if(app.isPermissionGranted()){ 
    userName = app.userStorage.userName = app.getUser().displayName; 
    } else { 
    requestPermission(); 
    } 
} 

(儘管我沒有測試此,它看起來大致正確)

如果您要求的位置,這可能會或可能不會像好一個辦法。雖然Google Home設備的位置固定,但使用手機助理可能會發生變化。在這種情況下,您需要每次重新請求它。

很明顯,在很多情況下這是不可取的,團隊意識到這是多麼糟糕的體驗。什麼時候沒有承諾,但希望他們正在尋求更好的解決方案。

+0

謝謝你的回答! –

相關問題