PolicyService
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
PolicyService ti aiuta a interrogare le informazioni relative al rispetto delle politiche per i giocatori in tutto il mondo in base alla fascia d'età, alla posizione e al tipo di piattaforma.
Sommario
Proprietà
Metodi
Determina se un utente può vedere le risorse del progetto del marchio all'interno della tua esperienza.
Restituisce informazioni sulla politica dei ritorni su un giocatore in base alla geolocalizzazione, al gruppo di età e alla piattaforma.
Proprietà
Metodi
CanViewBrandProjectAsync
Determina se un utente può vedere le risorse del progetto del marchio all'interno della tua esperienza.Questo metodo ti consente di lavorare con i marchi per mostrare solo risorse commerciali a audience conformi ai marchi.
Per utilizzare CanViewBrandProjectAsync , devi utilizzare un ID progetto di marca fornito da Roblox. Per richiedere un ID progetto di marca, contattaci .
Devi chiamare questo metodo su uno script lato server e avvolgerlo in un pcall() .
Parametri
L'oggetto Player che stai cercando di mostrare al progetto di marca.
L'ID del progetto di marca fornito da Roblox. Rappresenta tutte le risorse associate a un progetto di marca.
Restituzioni
Se o meno il progetto del marchio può essere mostrato all'utente specifico.
Campioni di codice
You must call CanViewBrandProjectAsync from the server-side and then fire an event on the client. Calling this method from the client-side returns an error.
-- In ServerScriptService
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local PolicyService = game:GetService("PolicyService")
-- Pre-created RemoteEvent in ReplicatedStorage
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
local brandedAsset = ReplicatedStorage:WaitForChild("BrandedAsset")
local defaultAsset = Instance.new("Part")
Players.PlayerAdded:Connect(function(player)
-- PolicyService:CanViewBrandProjectAsync can only be called from the Server
local success, canView = pcall(function()
return PolicyService:CanViewBrandProjectAsync(player, "BRP-0123456789")
end)
if success and canView then
RemoteEvent:FireClient(player, brandedAsset)
else
RemoteEvent:FireClient(player, defaultAsset)
end
end)
-- In StarterPlayerScripts
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- Pre-created RemoteEvent in ReplicatedStorage
local RemoteEvent = ReplicatedStorage:WaitForChild("RemoteEvent")
RemoteEvent.OnClientEvent:Connect(function(partToLoad)
local clonedPart = partToLoad:Clone()
clonedPart.Parent = workspace
end)
GetPolicyInfoForPlayerAsync
Restituisce informazioni sulla politica dei ritorni su un giocatore in base alla geolocalizzazione, al gruppo di età e alla piattaforma. La struttura del dizionario restituito è la seguente:
<th>Tipo</th><th>Richiesto per</th><th>Descrizione</th></tr></thead><tbody><tr><td><code>AreAdsAllowed</code></td><td>Booleano</td><td>Qualsiasi esperienza che include <a href="/production/monetization/immersive-ads">annunci immersivi</a>.</td><td>Quando <code>vero</code>, il giocatore potrebbe vedere annunci immersivi all'interno di un'esperienza.</td></tr><tr><td><code>ArePaidRandomItemsRestricted</code></td><td>Booleano</td><td>Qualsiasi esperienza che abbia pagato oggetti casuali.</td><td>Quando <code>vero</code>, il giocatore non può <b>interagire</b> con generatori di oggetti casuali a pagamento, né via valuta in-esperienza acquistata con Robux o Robux direttamente.</td></tr><tr><td><code>Referenze di link esterno consentite</code></td><td>Array</td><td>Qualsiasi esperienza che faccia riferimento a link esterni.</td><td>Un elenco di riferimenti di link esterni come link di social media, maniglie o iconografia che un giocatore è autorizzato a vedere.I valori possibili includono <code>"Discord"</code> , <code>"Facebook"</code> , <code>"Twitch"</code> , <code>"YouTube"</code> , <code>"X"</code> , <code>"GitHub"</code> , e <code>"Guilded"</code> .</td></tr><tr><td><code>È consentito condividere contenuti</code></td><td>Booleano</td><td>Qualsiasi esperienza che consenta agli utenti di condividere contenuti al di fuori della piattaforma.</td><td>Quando <code>vero</code>, al giocatore è consentito di condividere contenuti utilizzando API che aprono flussi di condivisione esterni come <code>Class.CaptureService:PromptShareCapture()|PromptShareCapture()</code>.</td></tr><tr><td><code>ÈEligibleToPurchaseCommerceProduct</code></td><td>Booleano</td><td>Qualsiasi esperienza che voglia vendere <a href="/production/monetization/commerce-products">prodotti di commercio</a>.</td><td>Quando <code>vero</code>, il giocatore è idoneo ad acquistare prodotti di commercio all'interno di un'esperienza.</td></tr><tr><td><code>IsEligibleToPurchaseSubscription</code></td><td>Booleano</td><td>Qualsiasi esperienza che voglia vendere abbonamenti.</td><td>Quando <code>vero</code>, il giocatore è idoneo ad acquistare abbonamenti all'interno di un'esperienza.</td></tr><tr><td><code>IsPaidItemTradingAllowed</code></td><td>Booleano</td><td>Qualsiasi esperienza che consenta agli utenti di acquistare oggetti virtuali con cui possono scambiare con altri giocatori.</td><td>Quando <code>vero</code>, il giocatore può scambiare oggetti virtuali che ha acquistato con valuta in-experience o Robux.</td></tr><tr><td><code>È soggetto alle politiche di Cina</code></td><td>Booleano</td><td>Qualsiasi esperienza che è disponibile in Cina.</td><td>Quando <code>vero</code>, un'esperienza dovrebbe far rispettare le modifiche di conformità. Vedi <a href="https://devforum.roblox.com/t/new-programs-available-roblox-china-licensed-to-operate/1023361">questo post del forum</a> per ulteriori informazioni.</td></tr></tbody>
Nome |
---|
Eccedenze
Come qualsiasi chiamata asincrona, questo metodo deve essere incapsulato in pcall() e gestito correttamente gli errori.Un elenco completo dei messaggi di errore possibili e delle loro ragioni è:
<th>Motivo</th></tr></thead><tbody><tr><td>L'istanza non era un giocatore</td><td>Il parametro <code>giocatore</code> non è un'istanza <code>Class.Player</code>.</td></tr><tr><td>Giocatori non trovati</td><td>Errore interno che l'oggetto <code>Class.Players</code> è mancante.</td></tr><tr><td>Questo metodo non può essere chiamato sul client per un giocatore non locale</td><td>Questo metodo non può essere chiamato sul client per una classe non locale <code>Class.Player</code>.</td></tr><tr><td>GetPolicyInfoForPlayerAsync viene chiamato troppe volte</td><td>Errore interno che <code>GetPolicyInfoForPlayerAsync()</code> viene chiamato più di 100 (impostazione attuale) volte prima che una risposta HTTP torni.</td></tr></tbody>
Messaggio |
---|
Vedi anche LocalizationService:GetCountryRegionForPlayerAsync() che restituisce una stringa di codice del paese/regione secondo la geolocalizzazione del client del giocatore.
Parametri
Restituzioni
Un dizionario che contiene informazioni sull'informazione di politica del giocatore richiesto; vedi sopra per la struttura del dizionario.
Campioni di codice
This code sample gets policy information for the local player and warns if they cannot interact with paid random item generators.
local PolicyService = game:GetService("PolicyService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local success, result = pcall(function()
return PolicyService:GetPolicyInfoForPlayerAsync(player)
end)
if not success then
warn("PolicyService error: " .. result)
elseif result.ArePaidRandomItemsRestricted then
warn("Player cannot interact with paid random item generators")
end
This code sample gets policy information for the local player and warns if they cannot purchase a real-world commerce product.
local PolicyService = game:GetService("PolicyService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local success, result = pcall(function()
return PolicyService:GetPolicyInfoForPlayerAsync(player)
end)
if not success then
warn("PolicyService error: " .. result)
elseif not result.IsEligibleToPurchaseCommerceProduct then
warn("Player is not eligible to purchase commerce products")
end