-
-
Notifications
You must be signed in to change notification settings - Fork 2k
Games: Added game account management #2918
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 5 commits
Commits
Show all changes
67 commits
Select commit
Hold shift + click to select a range
f64ec52
Games: Added game account management
DaVinci9196 780dad4
Merge branch 'microg:master' into fix_multi_game_sign_in
DaVinci9196 da72a9e
remove redundant judgments
DaVinci9196 f88ba18
Games login add permissions web
DaVinci9196 a9f0975
Modify layout and error display
DaVinci9196 ac5f48c
change default
DaVinci9196 2204761
cleancode
DaVinci9196 5aa5be1
cleancode
DaVinci9196 256d475
cleancode
DaVinci9196 f49c4cc
cleancode
DaVinci9196 598f5dc
Modified to <2025 microG Project Team>
DaVinci9196 52b31df
remove GPlayGame Logo
DaVinci9196 e4f2f15
Measurement: Update to latest revision
mar-v-in 585360b
Add some missing package info
mar-v-in 79312a5
Ads Dynamite: Inject user-agent into app's shared preferences
mar-v-in 57b3657
Auth: Handle invalid account (#2865)
DaVinci9196 ba939ea
Added translation using Weblate (Indonesian)
cyberboh aacb2bf
Translated using Weblate (Italian)
Fs00 830ba75
Translated using Weblate (Romanian)
ygorigor b678621
Translated using Weblate (Russian)
ItsRomeostar 01680fe
Translated using Weblate (Chinese (Traditional Han script))
xlionjuan 096b158
Translated using Weblate (Dutch)
ruditimmermans cccc76e
Translated using Weblate (Portuguese (Brazil))
lucasmz-dev 26987fb
Translated using Weblate (Chinese (Simplified Han script))
hustler-not-chatty d058d60
Translated using Weblate (Irish)
aindriu80 72a2701
Added translation using Weblate (Persian)
alr86 d774a1a
Translated using Weblate (Russian)
5f2c838
Translated using Weblate (Polish)
userofinternet2023 3475746
Added translation using Weblate (Latvian)
Coool 4026ee1
Translated using Weblate (Indonesian)
ca-kraa aac5e6f
Translated using Weblate (Uyghur)
AbduqadirAbliz 90da81e
Translated using Weblate (Filipino)
searinminecraft 792b389
Translated using Weblate (Arabic)
QSkill 8a59b12
Translated using Weblate (Italian)
ale5000-git 2de7b67
Translated using Weblate (Polish)
rehork cca51e1
Translated using Weblate (Chinese (Simplified Han script))
0b79396
Translated using Weblate (Italian)
250c777
Translated using Weblate (Thai)
grenadin 6e2ee46
Translated using Weblate (Indonesian)
67fef83
Translated using Weblate (Tamil)
TamilNeram 028966a
Translated using Weblate (Asturian)
enolp 3506720
Translated using Weblate (Spanish)
AlejandroMoc 9f52521
Phenotype: New configuration parameters (#2880)
DaVinci9196 448c6b9
Add dummy for App Engage Service (#2858)
DaVinci9196 f30438b
Vending: Expand payment methods (#2881)
DaVinci9196 9440c89
Change CompileSdk to 35 and Opt Out Edge to Edge (#2895)
p1gp1g b58c6e4
PoToken: Optimize po-token refresh logic (#2894)
DaVinci9196 8be3594
Return empty bundle on IAB getAlternativeBillingOnlyDialogIntent (#2914)
DaVinci9196 f203efa
Add com.android.vending.BILLING permission (#2930)
DaVinci9196 86c2158
HMS Maps: Add dark mode style (#2928)
DaVinci9196 d626566
Fix the names of the components in the self-check (#2927)
ale5000-git ae2ae3a
Add Wallet Service getClientToken dummy method (#2925)
DaVinci9196 50fa566
Vending: Add InAppReviewService dummy (#2955)
DaVinci9196 64d7e16
Google package: Add NotebookLM signature information (#2947)
DaVinci9196 cb1f6c7
Measurement: Make stub session id (#2946)
DaVinci9196 05b8f00
HMS Maps: Improve compatibility (#2945)
DaVinci9196 8bfc26a
Auth: Correctly include email scope in auth request (#2938)
DaVinci9196 927284e
AppMeasurement: Temporarily store UserProperties for apps (#2934)
DaVinci9196 062f831
Maps: Handle camera position update without valid lat/lng
mar-v-in ca6b7ca
Auth: Don't reset account visibility if already set
DaVinci9196 8f6b132
Phenotype: Add supported Gemini languages for GMail app
DaVinci9196 58b91c7
DynamicLink: Optimized the code (#2908)
DaVinci9196 5955157
DroidGuard: Add configuration switch to turn off hardware attestation…
mar-v-in 87d08b6
Asset: Optimize resource download logic (#2957)
DaVinci9196 5dee65e
Merge branch 'master' into fix_multi_game_sign_in
DaVinci9196 375a52c
Revert "Modified to <2025 microG Project Team>"
DaVinci9196 3071431
Reapply "Modified to <2025 microG Project Team>"
DaVinci9196 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
/* | ||
* SPDX-FileCopyrightText: 2025 microG Project Team | ||
* SPDX-License-Identifier: Apache-2.0 | ||
*/ | ||
|
||
package google.play.games.whitelisted.v1whitelisted; | ||
|
||
option java_outer_classname = "GamesPlayersProto"; | ||
|
||
option java_package = "org.microg.gms.games"; | ||
option java_multiple_files = true; | ||
|
||
service PlayersFirstParty { | ||
rpc DeleteApplicationDataFirstParty (DeleteApplicationDataRequest) returns (DeleteApplicationDataResponse); | ||
rpc DeletePlayerFirstParty (DeletePlayerRequest) returns (DeletePlayerResponse); | ||
} | ||
|
||
service ApplicationsFirstParty { | ||
rpc ListApplicationsWithUserDataFirstParty (ListApplicationsWithUserDataRequest) returns (ListApplicationsWithUserDataResponse); | ||
} | ||
|
||
message ListApplicationsWithUserDataRequest { | ||
optional string locale = 1; | ||
optional string androidSdk = 2; | ||
} | ||
|
||
message ListApplicationsWithUserDataResponse { | ||
optional string tag = 1; | ||
optional int32 code = 2; | ||
repeated FirstPartyApplication firstPartyApplication = 3; | ||
} | ||
|
||
message FirstPartyApplication { | ||
optional string tag = 1; | ||
optional Application application = 2; | ||
optional int32 unlockAchievementsNum = 6; | ||
optional int32 played = 9; | ||
} | ||
|
||
message Application { | ||
optional string tag = 1; | ||
optional string gameId = 2; | ||
optional string gameName = 3; | ||
optional ApplicationIcon gameIcon = 7; | ||
optional int32 achievementsNum = 10; | ||
} | ||
|
||
message ApplicationIcon { | ||
optional string type = 1; | ||
optional int32 width = 2; | ||
optional int32 height = 3; | ||
optional string url = 4; | ||
optional string tag = 5; | ||
} | ||
|
||
message DeletePlayerRequest {} | ||
|
||
message DeletePlayerResponse {} | ||
|
||
message DeleteApplicationDataRequest { | ||
optional string gameId = 1; | ||
optional int32 status = 2; | ||
} | ||
|
||
message DeleteApplicationDataResponse {} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
36 changes: 36 additions & 0 deletions
36
play-services-core/src/main/kotlin/org/microg/gms/games/GameProfileSettings.kt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
/* | ||
* SPDX-FileCopyrightText: 2025 e foundation | ||
* SPDX-License-Identifier: Apache-2.0 | ||
*/ | ||
|
||
package org.microg.gms.games | ||
|
||
import android.content.ContentValues | ||
import android.content.Context | ||
import android.database.Cursor | ||
import org.microg.gms.settings.SettingsContract | ||
|
||
object GameProfileSettings { | ||
private fun <T> getSettings(context: Context, vararg projection: String, f: (Cursor) -> T): T = SettingsContract.getSettings( | ||
context, SettingsContract.GameProfile.getContentUri(context), projection, f | ||
) | ||
|
||
private fun setSettings(context: Context, v: ContentValues.() -> Unit) = SettingsContract.setSettings(context, SettingsContract.GameProfile.getContentUri(context), v) | ||
|
||
@JvmStatic | ||
fun setAllowCreatePlayer(context: Context, enabled: Boolean) { | ||
setSettings(context) { put(SettingsContract.GameProfile.ALLOW_CREATE_PLAYER, enabled) } | ||
} | ||
|
||
@JvmStatic | ||
fun setAllowUploadGamePlayed(context: Context, enabled: Boolean) { | ||
setSettings(context) { put(SettingsContract.GameProfile.ALLOW_UPLOAD_GAME_PLAYED, enabled) } | ||
} | ||
|
||
@JvmStatic | ||
fun getAllowCreatePlayer(context: Context): Boolean = getSettings(context, SettingsContract.GameProfile.ALLOW_CREATE_PLAYER) { c -> c.getInt(0) != 0 } | ||
|
||
@JvmStatic | ||
fun getAllowUploadGamePlayed(context: Context): Boolean = getSettings(context, SettingsContract.GameProfile.ALLOW_UPLOAD_GAME_PLAYED) { c -> c.getInt(0) != 0 } | ||
|
||
} |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.