設定Google Play 遊戲服務| Android game development

文章推薦指數: 80 %
投票人數:10人

如果想為Play 遊戲服務設定憑證,當做用戶端ID 和遊戲之間的關聯資源,請用Google Cloud Platform 建立用戶端ID。

然後使用Google Play 管理中心新增憑證, ... Platform AndroidStudio GooglePlay Jetpack Kotlin Docs Games English BahasaIndonesia Español–AméricaLatina Português–Brasil TiếngViệt 中文–简体 中文–繁體 日本語 한국어 Signin Games Overview What'snew Guides Reference Resources Platform AndroidStudio GooglePlay Jetpack Kotlin Docs Games Overview What'snew Guides Reference Resources Introduction Gamedevelopmentbasics Developerpreviews Design Overview Supportgamingdevices 64-bitarchitecturesScreentypesVulkanpre-rotation 3Dassetdesign Vertexdatamanagement Implement Overview Useagameengine Overview DevelopwithDefold InstallandconfigureprojectsforAndroidSupportmultipleformfactorsandscreensizesExporttoAndroid DevelopwithGodot InstallandconfigureprojectsforAndroidGodotrendereroptionsSupportmultipleformfactorsandscreensizesExporttoAndroid DevelopwithUnity OverviewCreateanAndroidAppBundlewithUnityIntegratePlayAssetDeliveryUnityLightinginMobileGames UseAndroidPerformanceTuner OverviewEnabletheAPIIntegratethepluginInitializethelibraryandverifyoperationDefineannotations,fidelityparameters,andqualitylevelsAddloadingtimerecordingfunctionsIncludeAddressablesscenesRunthemonitorappReviewandpublishTroubleshootcommonerrorsReferenceSymbolicateAndroidcrashesandANRforUnitygamesDevelopwithUnrealRequestinguserpermissionsSecureyourgame Createorextendagameengine Overview Gettingstarted IntegrateGameActivity OverviewGetstartedUsegametextinputMigratefromNativeActiviyConfiguregraphicsUnderstandAndroidgameloops Processinputevents AddtouchsupportSupporttextinput Supportgamecontrollers OverviewUsethegamecontrollerlibraryUsecustomcontrollerdevicemappingsAddmousesupportSupportsensorinput Achieveproperframepacing Overview FramepacinginOpenGLES IntegrateUpdateyourbuildsettingsAddframepacingfunctionsVerifyframepacingimprovement FramepacinginVulkan IntegrateUpdateyourbuildsettingsAddframepacingfunctionsVerifyframepacingimprovementReference IntegrateAndroidPerformanceTuner OverviewRunthedemoappEnabletheAPIUpdateyourbuildsettingsDefineannotations,fidelityparameters,andsettingsAddframetimingfunctionsAddloadingtimerecordingfunctionsValidate,package,andpublishtheAPKTroubleshootcommonerrorsAdvancedusageReference Outputaudio OverviewUpdatebuildsettingsUseOboeCodesamplesFullOboeguide Managememory OverviewDebugnativememoryuseDeliverassetsDetectanddiagnosecrashes AndroidGameDevelopmentKit(AGDK) OverviewDownloadReleasenotes AndroidGameDevelopmentExtensionforVisualStudio OverviewQuickstartConfigureaprojectDebuggerMeasureappperformanceModifybuild.gradlefilesforAndroidStudioSamplesReleasenotes AndroidStudiotasks Optimize Overview Bestpractices Reducegamesize AndroidGPUInspector OverviewQuickstartSupporteddevices Systemprofiling OverviewViewasystemprofileGPUperformancecounters Analyzeasystemprofile FrameprocessingtimesMemoryefficiencyTexturememorybandwidthusageVertexmemorybandwidthusageThreadscheduling Frameprofiling Overview Analyzeaframeprofile MostexpensiverenderpassesVertexformatsShaderperformance FrameProfilerUI PerformancepaneCommandspaneFramebufferpaneGeometrypaneReportpaneShaderpaneMemorypaneStatepaneTexturespaneTexturepanePipelineviewpaneSupportedVulkanextensionsTroubleshoot AndroidPerformanceTuner ManagethermalandCPUperformance MemoryAdviceAPI OverviewGetstarted GameMode OverviewOptimizewithGameModeAPIGameModeinterventions Deliver Overview GooglePlayGamesServices OverviewGetstartedDownloads SetupPlayConsole SetupPlayGamesServicesEnablefeaturesCloudprojectmanagementPublish Managefeatures AchievementsLeaderboardsEventsSavedgamesFriendsSign-in UsetheAPIs Android GetstartedSign-inEnableserver-sideaccessAnti-piracy Addfeatures AchievementsLeaderboardsFriendsSavedgamesEventsPlayerstatsTroubleshooting Unity OverviewGetstarted Addfeatures AchievementsLeaderboardsSavedgamesEventsFriendsPlayerstatsCAPI-comingsoon PublishingAPI OverviewGetstartedUploadimagesManagementAPI Requirementsandguidelines QualitychecklistBrandingguidelinesQuotaandratelimitsDatadisclosurerequirementsTermsofserviceSupport GooglePlayGamesforPC OverviewGetstarted Setupyourgame PCcompatibilityGraphicsconfiguration Deviceinput SetupinputMouseinput InputSDK OverviewQuickstart Continuity OverviewContinuityrequirementsVerifyingrequirementsExistingidentitysolutionsUsetheemulatorTestonChromeOS Publishanddeploy PackageSubmitUpdateIntegrityProtectionFAQ PlayasyouDownload OverviewBestpractices ApplynowfortheIndieGamesFundLATAM! Androidgamedevelopment Games Guides 設定GooglePlay遊戲服務 Stayorganizedwithcollections Saveandcategorizecontentbasedonyourpreferences. 本頁面將說明如何使用GooglePlay管理中心為Android遊戲設定GooglePlay遊戲服務。

您可以透過Play管理中心集中管理遊戲服務,並設定用來授權及驗證遊戲的中繼資料。

若要把遊戲加入Play管理中心,請按照以下一般步驟操作: 為遊戲建立遊戲專案,並提供遊戲名稱、說明等詳細資料。

建立並連結必要憑證,以便授權和驗證遊戲使用GooglePlay遊戲服務。

事前準備 您必須在Play管理中心中設定GooglePlay開發人員帳戶。

詳情請見「註冊GooglePlay開發人員帳戶」。

授予編輯權限:如果想在Play管理中心編輯Play遊戲服務設定,您的團隊必須要有管理Play遊戲服務的權限。

詳情請參閱「新增開發人員帳戶使用者以及管理各項權限」。

登入Play管理中心 若要登入,請至GooglePlay管理中心。

如果尚未註冊Play管理中心,系統將提示您進行註冊程序。

將遊戲加入Play管理中心 若要新增遊戲,請按照以下步驟操作: 在Play管理中心建立應用程式,然後說明這是遊戲。

詳情請參閱「建立及設定應用程式」。

前往「Grow」(拓展)>「PlayGamesServices」(Play遊戲服務)>「Setupandmanagement」(設定與管理)>「Configuration」(設定)。

說明遊戲是否已在使用GoogleAPI(如Firebase)。

請務必選擇正確選項,否則遊戲使用GoogleAPI時可能會發生錯誤。

選項如下: 「No,mygamedoesn'tuseGoogleAPIs」(否,我的遊戲沒有使用GoogleAPI):如果您要建立新遊戲,或是從來沒為這個設定設定GoogleAPI,請選擇這個選項。

輸入遊戲名稱,然後按一下「Create」(建立)。

「Yes,mygamealreadyusesGoogleAPIs」(是,我的遊戲使用了GoogleAPI):如果您已有為遊戲設定GoogleAPI,請選擇這個選項。

在這個情況下,您可以看到顯示您的GoogleCloud控制台專案的清單。

從清單中選取專案,然後按一下「Use」(使用)。

「UseanexistingPlayGamesServicesproject」(使用現有的Play遊戲服務專案):如果您想使用現有的Play遊戲服務專案,請用這個選項。

您會看到顯示帳戶現有Play遊戲服務專案的清單。

從清單中選取您的遊戲專案,然後按一下「Use」(使用)。

這不是常用的選項,但是如果您要在Play管理中心建立新遊戲,以便更改套件名稱,或是您的遊戲有免費和付費版本,並需要使用不同套件名稱,就可以選擇這個選項。

系統會建立Play遊戲服務遊戲專案,並會在GoogleCloud控制台建立相應的項目。

按一下「Properties」(屬性)區段內的「EditProperties」(編輯屬性)並新增資訊,如遊戲的說明、類別及圖像資源。

以下是這些屬性的設定指南: 測試只需要使用顯示名稱。

您必須填妥其他欄位,然後才能發布遊戲。

遊戲的顯示名稱和說明應和遊戲的Play商店資訊相同。

建立圖像資源的指南請參閱「新增預覽資源以展示您的應用程式」及「GooglePlay精選圖片指南」。

產生OAuth2.0用戶端ID 您的遊戲必須要有OAuth2.0用戶端ID,才能通過呼叫GooglePlay遊戲服務所需的驗證和授權。

如果想為Play遊戲服務設定憑證,當做用戶端ID和遊戲之間的關聯資源,請用GoogleCloudPlatform建立用戶端ID。

然後使用GooglePlay管理中心新增憑證,以便將用戶端ID連結到遊戲。

詳細操作說明請看以下步驟: 設定OAuth同意畫面 如果您尚未設定OAuth同意畫面,「Credentials」(憑證)區段會顯示訊息並要求您進行設定。

按一下「Configure」(設定)。

這樣做會開啟對話方塊,其中會進一步說明步驟,並附上GoogleCloudPlatform的深層連結。

確定能夠遊玩遊戲的所有人都能看到同意畫面。

最終範圍清單需包括games、games_lite,和drive.appdata,這些範圍都不需要進行應用程式驗證。

建議您立即發布同意畫面。

如果您無法立即發布,可以對測試人員開放同意畫面,讓測試人員可以登入遊戲。

完成OAuth同意畫面設定後,按一下「Done」(完成)。

GooglePlay管理中心會自動重新整理,如果設定成功,您就可以建立憑證了: 建立憑證 為了授權遊戲和GooglePlay遊戲服務通訊,您必須使用經過授權的OAuth2用戶端ID建立憑證。

按一下「Credentials」(憑證)區段內的「Addcredential」(新增憑證)。

在精靈內選擇是否要建立Android憑證(如果您的遊戲APK會驗證使用者並使用Play遊戲服務API)或遊戲伺服器憑證(如果您的遊戲伺服器會使用Play遊戲服務API)。

請按照您想用的憑證類型參閱相關操作說明。

Android「設定憑證詳細資料」 確認「Name」(名稱)欄位內的名稱和遊戲名稱相符。

選擇是否要啟用反盜版功能。

「設定授權」 接下來,選取這個遊戲專案要用的OAuth用戶端ID。

如果您已經有OAuth2用戶端ID,可以在此選擇。

不過,我們通常會建立新的用戶端ID。

按一下「CreateOAuthclient」(建立OAuth用戶端)。

這樣做會開啟對話方塊,其中會附上在GoogleCloudPlatform建立OAuth用戶端ID的深層連結和操作說明。

將應用程式類型設為「Android」。

在「Name」(名稱)欄位輸入遊戲名稱。

在「Packagename」(套件名稱)欄位輸入Android應用程式的套件名稱。

開啟終端機並執行Keytool公用程式,以便取得版本和偵錯憑證的SHA1指紋。

如果想取得版本的憑證指紋,請執行以下指令: keytool-list-keystore-v 如果想取得偵錯憑證指紋,請執行以下指令: keytool-list-keystore-v 注意:Windows的偵錯KeyStore位於C:\Users\\.android\debug.keystore。

Mac或Linux的偵錯KeyStore通常位於~/.android/debug.keystore。

Keytool公用程式會提示您輸入Keystore密碼。

偵錯KeyStore的預設密碼為android。

然後,Keytool會在終端機列印指紋。

把SHA1指紋貼到「Signingcertificatefingerprint(SHA1)」(簽署憑證指紋(SHA1))欄位內。

按一下「Create」(建立)。

如要進一步瞭解Android裝置上的OAuth2.0,請參閱「驗證OAuth2服務」。

警告:請務必記下您在此步驟設定的套件名稱和簽署憑證。

如果您在應用程式中使用不同的憑證或套件名稱,將會造成驗證失敗。

按下對話方塊內的「Done」(完成)之後,可用的用戶端ID就會重新整理。

從下拉式選單中選取您建立的憑證,然後按一下「SaveChanges」(儲存變更內容)。

這樣做會將憑證儲存為草稿,讓您可以在遊戲內驗證Play遊戲服務。

建議您建立兩個憑證:一個憑證使用版本憑證指紋,令一個使用偵錯憑證指紋。

確認兩個憑證都使用相同的套件名稱。

這樣做可以讓GooglePlay遊戲服務辨識已連結並用其他憑證簽署的APK提出的呼叫。

如果想進一步瞭解Android憑證簽署,請參閱「簽署應用程式」。

遊戲伺服器「設定憑證詳細資料」 確認「Name」(名稱)欄位內的名稱和遊戲名稱相符。

「設定授權」 接下來,選取這個遊戲專案要用的OAuth用戶端ID。

如果您已經有OAuth2用戶端ID,可以在此選擇。

不過,我們通常會建立新的用戶端ID。

按一下「CreateOAuthclient」(建立OAuth用戶端)。

這樣做會開啟對話方塊,其中會附上在GoogleCloudPlatform建立OAuth用戶端ID的深層連結和操作說明。

將應用程式類型設為「Webapplication」(網頁應用程式)。

在「Name」(名稱)欄位輸入遊戲名稱。

按一下「Create」(建立)。

如要進一步瞭解Android裝置上的OAuth2.0,請參閱「驗證OAuth2服務」。

按下對話方塊內的「Done」(完成)之後,可用的用戶端ID就會重新整理。

從下拉式選單中選取您建立的憑證,然後按一下「SaveChanges」(儲存變更內容)。

這樣做會將憑證儲存為草稿,讓您可以從遊戲伺服器驗證Play遊戲服務。

如果想進一步瞭解如何透過遊戲伺服器使用Play遊戲服務,請參閱「啟用GooglePlay遊戲服務的伺服器端存取權」。

啟用測試 為了確定GooglePlay遊戲服務可以正確在遊戲裡發揮功能,您應在發布遊戲變更內容到GooglePlay之前測試遊戲服務。

如果您的遊戲狀態為尚未發布,請在許可清單中加入測試人員的使用者帳戶,藉此授予測試人員存取權。

否則,當測試人員嘗試存取Play遊戲服務端點(如登入端點)時,將會發生OAuth和404錯誤。

持有授權測試帳戶的使用者可以存取您尚未發布的Play遊戲服務遊戲專案,並可以測試您設定的Play遊戲服務是否可以正常使用。

重要資訊:請記得在測試人員中加入您自己,否則您的使用者帳戶無法使用Play遊戲SDK。

您可以透過以下兩種方式讓測試人員在您的遊戲裡使用Play遊戲服務API: 若是個人,您可以新增每個人的電子郵件地址。

若是團體,您可以為Play管理中心的測試群組啟用Play遊戲服務。

若要在遊戲專案裡新增個別測試人員: 前往GooglePlay管理中心並開啟遊戲的「Tester」(測試人員)分頁標籤(「Grow」(拓展)>「PlayGamesServices」(Play遊戲服務)>「Setupandmanagement」(設定與管理)>「Testers」(測試人員))。

按一下「Addtesters」(新增測試人員)按鈕。

在系統顯示的對話方塊中輸入您想設為測試人員的Google帳戶電子郵件地址(以半形逗號隔開,或每行輸入一個電子郵件地址)。

按一下「Add」(新增)將該名使用者設為測試人員。

幾個小時候,新增的測試人員帳戶應該就能存取Play遊戲服務了。

若要授予群組測試存取權,請讓測試群組可以存取Play遊戲服務: 利用GooglePlay的測試群組功能,即可輕鬆將應用程式的預先發布版本發布給由您信任的使用者組成的控管群組。

請參閱GooglePlay說明網站的「設定公開測試、封閉測試或內部測試」。

您可以授予存取權給某測試群組中所有能存取測試APK的使用者,以便測試您的遊戲。

這和您個別把人員加入測試人員清單的情形相同。

如要採用這種方式,請按照下列步驟進行: 開啟「PGSTesters」(PGS測試人員)區段(「Grow」(拓展)>「PlayGamesServices」(Play遊戲服務)>「Setupandmanagement」(設定與管理)>「Testers」(測試人員)),然後點選「Releasetracks」(測試群組)分頁標籤。

此頁面也會顯示已經可以測試Play遊戲服務的測試群組。

按一下「Addtracks」(新增測試群組)。

選取一或多個測試群組,以便啟用Play遊戲服務測試功能。

按一下「AddTracks」(新增測試群組)。

可以測試Play遊戲服務的測試群組清單上便會顯示您選取的測試群組。

您的GooglePlay管理中心內的遊戲必須要有連結的Android應用程式,才能使用此功能。

避免常見問題 為了避免發生常見的設定問題,請在設定遊戲使用GooglePlay遊戲服務時遵守以下推薦事項。

1.使用Play管理中心設定遊戲 如果您使用GoogleCloud控制台為應用程式建立Oauth2.0用戶端ID,那麼GooglePlay遊戲服務無法得知遊戲成就、排行榜及用戶端ID之間有關聯。

若要建立關聯,您必須按照「建立憑證」的說明使用Oauth2.0用戶端ID建立憑證。

2.在Android使用正確的應用程式ID 應用程式ID是必須提供的字串資源,您必須在Android資訊清單裡參照這個ID。

應用程式ID字串只使用數字(通常有12個以上),位於Play管理中心提供的用戶端ID開頭。

應用程式ID位於「Configuration」(設定)頁面頂端,位於您的遊戲名稱下方,並標記為「ProjectID」(專案ID)。

3.使用正確憑證簽署APK 當您在Play管理中心將Android應用程式連結到遊戲時,必須使用和您發布應用程式時完全相同的套件名稱及憑證指紋。

如果兩者有出入,那麼GooglePlay遊戲服務呼叫便會失敗。

您應該建立兩個用戶端ID,一個使用版本憑證指紋,另一個使用偵錯憑證指紋,並讓兩個ID使用相同的套件名稱。

如果想進一步瞭解如何在Play管理中心指定簽署憑證,請參閱「簽署應用程式」。

4.開發Android遊戲時,請將Play遊戲SDK納入程式庫專案,不要當做獨立JAR使用。

請務必在您的Android專案中參照GooglePlay服務SDK當做程式庫專案,否則如果您的應用程式無法找到GooglePlay服務資源,便可能發生錯誤。

若要瞭解如何設定Android專案,以便使用GooglePlay服務,請參閱「設定GooglePlay服務」。

5.在開發期間使用測試人員帳戶登入 如果您尚未在Play管理中心發布遊戲設定變更內容,則如果您並未用白名單測試人員帳戶登入,便可能在測試時發生錯誤。

您應該一律啟用自己Play管理中心發布者帳戶的測試功能。

如果想瞭解如何管理測試人員帳戶,請參閱「啟用測試帳戶」。

6.在GoogleCloudPlatform發布同意畫面在Play管理中心發布應用程式之前,請先在GoogleCloudPlatform發布同意畫面。

如果您沒有進行此操作,其他大眾將無法使用任何Play遊戲服務功能。

7.要釋出版本時,請先發布Play遊戲服務設定,然後再發布遊戲 開發人員可能會在沒發佈相應的應用程式Play遊戲服務設定之前,就不小心發布了應用程式。

這樣一來,應用程式無法參照正確的遊戲設定,可能會導致登入非測試人員帳戶的玩家發生錯誤。

釋出遊戲時,請記得先使用Play管理中心的「PublishGame」(發布遊戲)選項發布遊戲設定。

若要瞭解如何發布變更內容,請參閱「發布遊戲變更」。

其他秘訣請參閱Android疑難排解指南。

後續步驟 按照上述說明完成初期設定作業後,您可以為遊戲啟用Play遊戲服務功能,如遊戲進度存檔、排行榜、成就等。

ContentandcodesamplesonthispagearesubjecttothelicensesdescribedintheContentLicense.JavaandOpenJDKaretrademarksorregisteredtrademarksofOracleand/oritsaffiliates. Lastupdated2022-08-16UTC. [{ "type":"thumb-down", "id":"missingTheInformationINeed", "label":"MissingtheinformationIneed" },{ "type":"thumb-down", "id":"tooComplicatedTooManySteps", "label":"Toocomplicated/toomanysteps" },{ "type":"thumb-down", "id":"outOfDate", "label":"Outofdate" },{ "type":"thumb-down", "id":"translationIssue", "label":"Translationissue" },{ "type":"thumb-down", "id":"samplesCodeIssue", "label":"Samples/codeissue" },{ "type":"thumb-down", "id":"otherDown", "label":"Other" }] [{ "type":"thumb-up", "id":"easyToUnderstand", "label":"Easytounderstand" },{ "type":"thumb-up", "id":"solvedMyProblem", "label":"Solvedmyproblem" },{ "type":"thumb-up", "id":"otherUp", "label":"Other" }] Twitter Follow@AndroidDevonTwitter YouTube CheckoutAndroidDevelopersonYouTube LinkedIn ConnectwiththeAndroidDeveloperscommunityonLinkedIn MoreAndroid Android AndroidforEnterprise Security Source News Blog Podcasts Discover Gaming MachineLearning Privacy 5G AndroidDevices Largescreens WearOS AndroidTV Androidforcars AndroidThings ChromeOSdevices Releases Android11 Android10 Pie Oreo Nougat Marshmallow Lollipop KitKat DocumentationandDownloads AndroidStudioguide Developersguides APIreference DownloadStudio AndroidNDK Support Reportplatformbug Reportdocumentationbug GooglePlaysupport Joinresearchstudies Android Chrome Firebase GoogleCloudPlatform Allproducts Privacy License Brandguidelines Getnewsandtipsbyemail Subscribe English BahasaIndonesia Español–AméricaLatina Português–Brasil TiếngViệt 中文–简体 中文–繁體 日本語 한국어



請為這篇文章評分?