aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-02-27bump game-activity version to 3.0.0snap-temp-L71800030002201980Artyom Palvelev
This is a stable 3.0.0 release. Test: N/A Bug: 327188653 (cherry picked from https://android-review.googlesource.com/q/commit:c3531d41091562739346f3ef92c9f08cc5416143) Merged-In: I6aa05c37e4dd50db55eca7baa06188047a1af9d3 Change-Id: I6aa05c37e4dd50db55eca7baa06188047a1af9d3
2024-02-27Merge cherrypicks of ['android-review.googlesource.com/2962714', ↵Android Build Coastguard Worker
'android-review.googlesource.com/2962715'] into android-games-sdk-game-text-input-release. Change-Id: I1835bcdeca0214ac38d2480aad18823283da99c3
2024-02-27fix InMemoryDexClassLoader issues with old API levelsArtyom Palvelev
This CL fixes the rare condition in SDKs before 26 (which do not have InMemoryDexClassLoader). Sometimes, the exception is not triggered during class lookup, so we add an explicit check here. Test: build and run any sample that uses Swappy Bug: 323059686 (cherry picked from https://android-review.googlesource.com/q/commit:9ac9ebdde4c549ea4b0deec2f9a937b0a604a07d) Merged-In: I0d6dd75d1587ca4588039fe2c14ba749d86f89ff Change-Id: I0d6dd75d1587ca4588039fe2c14ba749d86f89ff
2024-02-27fix memory-advice scripts for Windows compatibilityArtyom Palvelev
Since Windows doesn't have `touch` command, we suggest that we use `echo > filename` command instead. Test: build Hogger sample and run it Fix: 322119350 (cherry picked from https://android-review.googlesource.com/q/commit:e56bed6cb60e16803c2fcfada1de91a23f5443e0) Merged-In: Ie2f17f418c9e1fc1da43e6c5944d652d314b4be0 Change-Id: Ie2f17f418c9e1fc1da43e6c5944d652d314b4be0
2024-02-13Snap for 11443790 from 884a5e759b685bb3b07078461645c368cd7730b5 to ↵Android Build Coastguard Worker
android-games-sdk-game-text-input-release Change-Id: I9339e9782a1e6b85e3a76428b527a62fd33d99ff
2024-02-13bump game-activity and game-text-input to 3.0.0rc01Artyom Palvelev
We are ready to promote these two libraries to release candidates. Test: N/A Fix: N/A Change-Id: I083b48db134f32aa595205c49ab6e34928cdf5f1
2024-01-12send explicit signals on key and touch events to the LooperArtyom Palvelev
Now we send APP_CMD_KEY_EVENT/APP_CMD_TOUCH_EVENT on corresponding events, so that games that are using ALooper polling with an infinite timeout would work correctly. Test: N/A Fix: 316196505 Change-Id: I3b7d3a09932e9d7e75b00aaede9180b8c9a1650f
2024-01-02Bump APT version to 2.0.0-beta01Barış Kaya
Test: N/A Change-Id: Ic1b0cc90c7b6f09c4242bf11e3f06f9566b668f9
2023-12-05fix text deletion in GameTextInputArtyom Palvelev
fix a bug caused by a typo in deleteSurroundingText. Note that the behavior should be the same as in the default handler, BaseInputConnection.deleteSurroundingText(). Test: N/A Fix: 314826655 Change-Id: Ieb56022f18b081fe3d911ae9ebbd827f3440650a
2023-11-21Remove the PredictQualityLevels API, and move APT to 2.0.0-alpha07.Barış Kaya
Test: Tested using experimentsdemo. Change-Id: I7d3115d774123dc65d8cd683783689ba936c8281
2023-11-20update game-activity, game-text-input and memory-adviceArtyom Palvelev
bump memory-advice to 2.1.0beta01, bump game-activity and game-text-input to 3.0.0beta01 Test: N/A Change-Id: Id89c22e503c1ab0b7b45c9b1b3089e0f3a56365b
2023-11-07Add explicit class castVictor Repetskyi
Bug: b/244910450 Test: Run insights sample Change-Id: I0b2106d4163957a3e257832c8d0860cbee7229b9
2023-11-06update MemoryAdvice modelArtyom Palvelev
This commit fixes several issues with MemoryAdvice library: * it removes "realtime" model which is trained on 0 and 1 labels, so it couldn't accurately predict values in between; * now red/yellow/green signals are given basing on the percentage of available memory; * available memory model is also updated: - hyperparameters are generated now by Hyperopt; - the final model is trained on the full dataset without validation. Fix: 308808048 Test: use any memory-allocating app like Hogger, AGDKTunnel, etc Change-Id: Ib3e05093efece5b09cda3212d16c76ee3b6ac1c0
2023-11-02Fixed total_memory_bytes sometimes reporting wrong value.Barış Kaya
Bug: b/284275685 Test: Tested using experimentsdemo Change-Id: I0957f8e0883f3856a2e2b1d645f8fc38159a8ddd
2023-10-20fix Doxygen comments in GameActivityEvents_internal.hArtyom Palvelev
Bug: N/A Test: N/A Change-Id: Iaae5d874ac94e6b356503574111ff47328840b82
2023-10-20Merge "bump versions of GameActivity and GameTextInput to 3.0" into mainArtyom Palvelev
2023-10-20Merge "refactor GameActivity and GameTextInput interfaces" into mainArtyom Palvelev
2023-10-19Fix improper button forwarding in GameTextInputNate Trost
Not all keycodes commonly mapped to game controller buttons were being filtered out of the key event stream being fed to GameTextInput. This could result in button presses being treated as unexpected text input. Bug: 306452719 Test: Build and run AGDKTunnel sample, use name edit feature to test input with connected controller Change-Id: I0755b34b36d16fbea45565681b44f7b97d3ba3f2
2023-10-19bump versions of GameActivity and GameTextInput to 3.0Artyom Palvelev
We increase the major version of these libraries since the APIs were changed. Bug: 301147938 Test: N/A Change-Id: I82e7c61a4e046fdfb8eb15559e7b4465f062fcdc
2023-10-19refactor GameActivity and GameTextInput interfacesArtyom Palvelev
These changes are made to address the feedback by NDK Council review. This CL does not change behavior of these libraries. Mostly these changes are cosmetic. Since we changed API earlier (GameActivityMotionEvent structure), we bump major versions of GameActivity and GameTextInput. Since we're making a major release, we fix a few other interfaces: * onEditorAction changes its return type from boolean to void * setImeEditorInfo now expects enum parameters, not integers * some code has been moved from GameActivityMotionEvent_fromJava into onTouchEvent_native * internal functions of GameActivityEvents are moved into GameActivityEvents_internal.h. Fix: 301147938 Test: run AGDKSample or any other sample Change-Id: I97d0479bd3bfaf137505258abb681528491abae0
2023-10-17New release for APT: 2.0.0-alpha06Barış Kaya
Test: N/A Change-Id: Ic338de712a90e255bfbaa912294dbf7264cd9aa6
2023-10-02TF Monitor: convert the 'when' statement to a series of if statements.Jim
The 'when' statement is unnecessary and my attempts to convert it to modern Kotlin have resulted in fresh bugs. This version is easier to follow in any case. Bug: 303029189 Test: Manual test Change-Id: Ib325716dfe7f5153f71765d7ba26eb361d324311
2023-10-02Fix an error made updating Kotlin version of TF Monitor.Jim
Kotlin now won't build without a default case on a 'when'. I misinterpreted the way this code works when doing the update. In this case the default should be to exit the loop. Bug: 303029189 Test: Manual test Change-Id: Iba229abeccf146b20a9261650f20456dcd36b900
2023-09-29Replace dependency removed in errorJim Blackler
In https://android-review.git.corp.google.com/c/platform/frameworks/opt/gamesdk/+/2768049 I removed the 'google-common-protos' library by accident. In my defence because its artifacts persist in build/extraced-include-protos even after being removed, the error is only noticeable when a full clean is performed by removing the 'build' library (not ideal). It's also updated to the latest version. Bug: 302693168 Test: Manual Change-Id: Ib952313298a2b0d51546a84fe20531f4f8d92606
2023-09-29Modernize TuningForkMonitor appJim
See bug for justification. API level 33 apps cannot be built with the Android Gradle Plugin specified (4.2.2). Upgrading the Android Gradle Plugin to 8.0 triggers a cascade of modernization requirements which this CL addresses. Protobuf library was updated from 3.0.0 to 3.8.0. The Gradle configuration was updated to match the currently recommended format. The full (non-lite) version of the library was included which avoids the need to use simlinks to include the google/protobuf protos (a nice bonus is this makes the project easier to build on Windows where simlinks are unidiomatic). option=lite was set in the Gradle script to retain the use of lite accessors. Kotlin was updated from 1.3.50 to 1.8.10. This requires changes to satisfy new restrictions around assigning const variables from non-final variables and requiring ‘when’ constructs to make a match in every case. In addition, Kotlin Synthetics were removed in 1.8, so their use to find views in layouts has been replaced with Jetpack View Binding. AGP now requires that the launch activity is exported, but discourages the package from being specified there. The structure of the build.gradle and settings.gradle files has been changed to the style recommended with the latest Android toolchain. Bug: 302670554 Test: Manual Change-Id: I5ec5864242b047cefda9abbf428f54846f5cad7f
2023-09-22Merge "Add tracking of tracers for swappy vulkan" into mainVamsidhar reddy Gaddam
2023-09-22Add tracking of tracers for swappy vulkanVamsidhar reddy Gaddam
SwappyVk_injectTracer acts differently from SwappyGL_injectTracer applying tracers only to the swapchain instances initialized until the call. In this commit, I add a list to the swappy singleton instance where all the tracers are saved and added to the swappy implementation when each swapchain instance is initialized automatically. There is no performance impact as the new logic only executes once at swapchain init time. Bug: 301242456 Test: Manual testing Change-Id: I0439a870bdeb367e5cdae90492a0252562f70d09
2023-09-21Merge "Add a new error message to predictQualityLevels." into mainBarış Kaya
2023-09-20Fix race condition in Swappy destructorVictor Repetskyi
Bug: b/298957185 Test: Bouncyball Change-Id: I2dfc7ca1e5cfe427fa7f49e0dfeff0a5b558306c
2023-09-20Add a new error message to predictQualityLevels.Barış Kaya
Bug: b/300512786 Test: Tested using experimentsdemo Change-Id: I03002431fa293c7d65679d4de9ef20ffe21294fa
2023-09-19Add fidelity parameters to sessionVamsidhar reddy Gaddam
Instead of storing fidelity parameters in the json request, it is now stored as part of the session. Bug: 301049970 Test: Manual testing using BoatAttack switching QLs Change-Id: I379430fa9535b09c4aa301b3be1cf50ff65226db
2023-09-15fix a race condition in GameTextInputArtyom Palvelev
This commit fixes the problem with concurrent access to the currentState_ variable in gametextinput.cpp. A mutex has been added to guarantee safe multithreaded access to it. Fix: 294112477 Test: N/A Change-Id: I09729504c863217fe5530bc980e83655c979d461
2023-09-15fix GameTextInput editing functionsArtyom Palvelev
The implementation was broken during refactoring. Fix: 300465694 Test: run AGDKTunnel and test edit box Change-Id: I011397d924d2b75b8039d6fa1cc81bd9b8dc947e
2023-09-13Merge "add a note about supported input types for GameTextInput" into mainArtyom Palvelev
2023-09-13add a note about supported input types for GameTextInputArtyom Palvelev
Currently we only support plain text and number inputs. Fix: 290894127 Test: N/A Change-Id: I095be619be6d45fe25469927c4941a5178a0f2a7
2023-09-13add physical volume buttons to the ignore list for GameTextInputArtyom Palvelev
Also fix the behavior so that the default system action is applied in case we don't handle the key. Fix: 289014222 Test: run AGDKTunnel Change-Id: Id62955e9a650f10d31b60be770f8be8f42fe1a02
2023-09-12Merge "Decrease minSdkVersion of memory advice to 19." into mainTreehugger Robot
2023-09-12Decrease minSdkVersion of memory advice to 19.Barış Kaya
Bug: b/296597460 Test: Tested using on an emulator running on API Level 19. Change-Id: I32e3f962ff1d8d9f31b3e6b8a79cefe88c860de6
2023-09-12fix wrong return type in MemoryAdviceArtyom Palvelev
This is a minor fix of the GetAvailableMemory() implementation. Bug: N/A Test: N/A Change-Id: I31602c97fb1b8ef56d8f724ca2bd58507b10d35e
2023-09-11add an API GetAvailableMemory()Artyom Palvelev
This CL adds a public interface for the implementation that has been added ealier. Bug: 297035019 Test: modify AGDKTunnel or Hogger sample to make this call and display the information returned Change-Id: I777de9d185e89f0a50d2e139da9c28b737fab771
2023-09-11Merge "update Hogger sample to the modern SDK" into mainArtyom Palvelev
2023-09-08update Hogger sample to the modern SDKArtyom Palvelev
Bug: N/A Test: run Hogger sample Change-Id: I3836757db158ba35d598e149eb7262dce23e1d52
2023-09-08make GameTextInput use default implementations from BaseInputConnectionArtyom Palvelev
Default versions of getSelectedText, getTextAfterCursor, getTextBeforeCursor contain more safety checks, so we drop our custom implementation of these functions in favor of default implementations. Bug: 298945353 Test: build and run AGDKTunnel sample, test text input Change-Id: I96340b0ae2475760898d83a1756f95e2f11c9ce6
2023-09-08attach MemoryAdvice thread to JVMArtyom Palvelev
MemoryAdvice functions can be potentially called from any thread. As they need to perform JNI calls, it's necessary to make JVM aware of the context of the new thread. This commit adds AttachCurrentThread() call when necessary. Bug: 277551258 Test: run either AGDKTunnel or Hogger sample Change-Id: I09d1f266655c038e444d2587d86890d33f98a34c
2023-09-07make AGDKTunnel sample use MemoryAdvice from sourceArtyom Palvelev
Bug: N/A Test: build and run AGDKTunnel Change-Id: I2207c22e140d67ce9ceeb712af5301650bfeb662
2023-09-06Fix memInfo.pid being unpopulated in some cases.Barış Kaya
The unpopulated pid caused a failure in memory telemetry collection. This should fix the issue and prevent accompanying errors from being printed. Bug: b/296368368 Test: Tested using experimentsdemo Change-Id: I761dc41267b9ce0a0c9c939d06273ab6fd6e84af
2023-09-05Merge "Add a setting option to tuningfork to disable async telemetry." into mainBarış Kaya
2023-09-05Merge "Update swappy after rc branch-off to 2.2.0" into mainVamsidhar reddy Gaddam
2023-09-05Add a setting option to tuningfork to disable async telemetry.Barış Kaya
This setting will completely disable async telemetry collection, which should improve performance on lower end devices. Test: Tested using setting this option to true in experimentsdemo Bug: b/286316491 Change-Id: I67b1fc3728899abd38dfe49b46f7a1107d4f50b9
2023-09-01fixed multiline modeArtyom Palvelev
GameTextInput settings weren't properly propagated on state changes. Bug: b/276725330 Test: modify AGDKTunnel to use multiline mode and run Change-Id: I5414d4ab3dce756b5cb2b4e91711b504b48b00c9