Commit Graph

54 Commits

Author SHA1 Message Date
Zephyron 3698478977 android: Fix battery temperature reading in EmulationFragment
Replaces the battery temperature reading implementation with a more
compatible approach using ACTION_BATTERY_CHANGED broadcast intent.
This change provides better backwards compatibility and adds proper
error handling for the temperature reading functionality.
2025-01-17 19:59:13 +10:00
Zephyron 62de5aa9de Downgrade Android SDK and build tools
- Reduce compileSdkVersion and targetSdk from 35 to 34
- Change NDK version to 26.1.10909125
- Downgrade Android Gradle Plugin from 8.8.0 to 8.1.2
- Add androidx.constraintlayout dependency

These changes improve compatibility with current Android development
environment and add necessary layout support.
2025-01-17 15:16:15 +10:00
Zephyron 236ad28d61 feat: Improve thermal display and build system
- Replace emoji thermal indicators with modern progress bar UI
- Switch temperature source to battery sensor for better accuracy
- Adjust temperature thresholds (30°C-45°C range)
- Add automatic Vulkan Validation Layer download for Android
- Downgrade Java/Kotlin target to 17 for wider compatibility

The thermal display now shows a visual progress bar with percentage
instead of emojis, making it easier to gauge system temperature at
a glance. Temperature reading now comes from the battery sensor
which is more reliable across devices.

Build system improvements include automated VVL binary downloads
and installation for Android builds when CITRON_DOWNLOAD_ANDROID_VVL
is enabled. Java target downgraded to 17 to ensure compatibility
with current Android toolchain.
2025-01-15 16:44:07 +10:00
Zephyron 9ae0eeeb87 Revert incorrect copyright attribution for non-contributed files
- In commit b3facaa6bb, the copyright header was
  updated to include "Citron Homebrew Project" across multiple files, regardless
  of whether any contributions were made.

- This commit removes the incorrect attribution and reverts the copyright header
  to its previous state.

- Copyright attribution should only be added when meaningful contributions have
  been made to the file.

- This commit ensures proper compliance with copyright standards and maintains
  correct attribution to the respective contributors.

- Special thanks to Tachi for pointing out the need for these corrections and
  ensuring that proper attribution practices are followed.
2025-01-14 15:33:24 +10:00
Zephyron cce4abbb0b Android: Update dependencies and improve UI feedback
- Update Kotlin and various AndroidX dependencies to stable versions
- Add temperature monitoring with color-coded display in emulation
- Add FPS color indication (red to green based on performance)
- Add legal disclaimer page to initial setup
- Remove x86_64 ABI filter to focus on arm64-v8a
- Adjust thermal and FPS update intervals for consistency
- Clean up redundant dependency declarations

The temperature display now shows both Celsius and Fahrenheit with
color coding based on safe operating ranges [WIP]. FPS counter provides
visual feedback through colors, making performance issues more
immediately apparent to users.
2025-01-13 17:48:02 +10:00
Zephyron 6d5475a9cf Android: Update build system and dependencies
- Update Gradle from 8.1 to 8.10.2
- Update Android Gradle Plugin from 8.1.2 to 8.8.0
- Update Kotlin from 1.9.20 to 2.1.20-Beta1
- Update various AndroidX dependencies to latest versions
- Update NDK from 26.1 to 27.2 (with RC1/RC2 options commented)
- Update Java target from 17 to 21
- Update Android target SDK from 34 to 35
- Enable additional optimizations in release builds:
  - Enable shrinkResources
  - Use proguard-android-optimize.txt
  - Disable JNI debugging
- Replace vector drawables with PNG for ic_citron
- Comment out unused ComputeInline constant in dma_pusher.cpp
- Update Gradle wrapper and configuration files

This updates the Android build system and dependencies to their latest
versions while enabling additional optimizations for release builds.
The ic_citron icon was converted from vector to PNG format for better
compatibility.
2025-01-13 15:17:39 +10:00
Zephyron b3facaa6bb
chore: update project references and add Citron copyright
- Replaced all references to the old project name with Citron.
- Added Citron copyright information alongside existing notices in all files.
2024-12-31 17:07:49 +10:00
t895 0a1283f94f android: Fix regex for git version 2024-02-08 14:24:15 -05:00
t895 99ea31faa8 ci: android: Play store publishing setup 2024-02-04 10:54:18 -05:00
t895 59080a3d1d android: Provide debug.keystore for debug and relWithDebInfo builds
Allows devs to share debug builds with testers without uninstalling the previous build
2024-01-21 22:08:07 -05:00
liamwhite 817c7c445d
Merge pull request #12667 from t895/version-info
android: Show version name instead of build hash in about fragment
2024-01-13 20:23:12 -05:00
t895 15d8a40529 android: Clean up git commands in build.gradle 2024-01-13 18:06:33 -05:00
t895 cdeaca73c4 android: Move ktlintCheck to yuzu-verify 2024-01-13 17:41:01 -05:00
t895 b2b4742e61 android: Update Kotlin version to 1.9.20 2023-12-30 15:11:00 -05:00
Liam bd59934350 nce: implement instruction emulation for misaligned memory accesses 2023-12-10 18:23:42 -05:00
t895 e744c06f61 android: Remove ini4j 2023-11-21 01:58:13 -05:00
Charles Lombardo 97b4ca1d01 android: Auto-generate locale config 2023-10-31 22:07:44 -04:00
Charles Lombardo 224b6036a4 android: Update dependencies
Updates to androidx navigation, lifecycle, preference, fragment, recyclerview, and core
2023-10-13 12:55:41 -04:00
Charles Lombardo 1591923f91 android: Update ndk to 26.1.10909125
The new ndk uses LLVM 17.0.2 so we can remove the LLVM download and libc++ options for the android builds
2023-10-13 12:55:41 -04:00
Charles Lombardo 703bf7cfce android: Update androidx window library to 1.2.0-beta03
Fixes an issue with the input overlay on certain devices where the controls would appear offscreen.
2023-09-21 17:36:14 -04:00
Charles Lombardo 67eeb05692 android: Set up signing config for release builds 2023-09-17 01:22:16 -04:00
Charles Lombardo 182fb83556
android: Set default build variant to mainlineRelWithDebInfo (#11358) 2023-08-23 16:12:39 +02:00
Charles Lombardo 1bc832c9b1 android: lint: Delete generated ktlint folder between builds
There's a bug in ktlint where it will run into an error if you build the project, delete a source file, and then build again. It will be unable to find the file you deleted and can't recover until these files are deleted. This just deletes those files before every run.
2023-08-21 17:31:13 -04:00
Charles Lombardo b76b698c17 android: Android 14 support
Specifies the permissions needed for the changes to foreground services in Android 14.
2023-06-28 16:15:18 -04:00
Charles Lombardo 330358cd16 android: Bump ktlint version to 0.47.1 2023-06-16 16:32:08 -04:00
Charles Lombardo fc6a2fe779 android: Disable import-ordering ktlint check 2023-06-16 16:31:49 -04:00
Charles Lombardo d85129aa17 Android: Use ktlint for Kotlin code style 2023-06-15 22:22:49 -04:00
Charles Lombardo a29fa119e0 android: Enable android linting 2023-06-15 22:19:58 -04:00
Charles Lombardo b79c993328 android: Adapt EmulationActivity to navigation component 2023-06-14 14:55:25 -04:00
Charles Lombardo 5751822e31 android: Use autoVersion when gradle property is set 2023-06-11 20:04:08 -04:00
Charles Lombardo 92d49ad652 android: Update dependencies 2023-06-11 02:17:29 -04:00
Charles Lombardo f23a2b514b android: Differentiate build types with new names
Change the applicationIdSuffix and app launcher title based on build type
2023-06-11 02:16:45 -04:00
Charles Lombardo 37e135d74d Android: Remove unused relWithVersionCode build type 2023-06-11 02:15:28 -04:00
Narr the Reg 4d61319307 android: Set version code 2023-06-06 12:14:38 -06:00
Abandoned Cart 00a391ce10 android: Resolve a couple Gradle warnings 2023-06-04 02:06:38 -04:00
bunnei ee8caac82f android: Various fixes for CI. 2023-06-03 00:06:05 -07:00
bunnei 17b5ed9baf android: externals: Update libadrenotools, use useLegacyPackaging. 2023-06-03 00:06:05 -07:00
Charles Lombardo 0cbae33790 android: Stop building x86 packages in APKs
This was really only meant for building the app to run in an emulator. If this is necessary, just add manually.
2023-06-03 00:06:04 -07:00
Charles Lombardo 8426e97f45 android: Clean up app build.gradle
Removes the conflicting declaration of "version" and changes to versionCode that did nothing.
2023-06-03 00:06:04 -07:00
Charles Lombardo c11c5b2eb7 android: Clean up dependencies
Additionally updates material and androidx core libraries
2023-06-03 00:06:03 -07:00
Charles Lombardo 0f06e73a7c android: Use proguard file in relWithDebInfo 2023-06-03 00:06:02 -07:00
Charles Lombardo 2289f7ad15 android: Fix issues with ea/main icons and version codes
Now all yuzu icon variants are taken care of and now we have a build variant that uses the versioning we need for the play store.
2023-06-03 00:06:01 -07:00
Charles Lombardo f69bc78dc5 android: Add early access upgrade fragment
We now have a second build flavor that will determine whether the "Get Early Access" button appears.
2023-06-03 00:06:00 -07:00
Charles Lombardo 65dc35a1a5 android: Game data cache 2023-06-03 00:05:59 -07:00
Charles Lombardo d8bacdfc14 android: Update dependencies 2023-06-03 00:05:59 -07:00
Charles Lombardo 56d3711e34 android: Migrate to AGP 8.0.1 2023-06-03 00:05:59 -07:00
Charles Lombardo f461465a92 android: Use short build hash 2023-06-03 00:05:58 -07:00
Charles Lombardo 61e0042633 android: Temporarily switch for a fixed version code for testing 2023-06-03 00:05:55 -07:00
Liam 8b4c5a9939 android: enable LTO 2023-06-03 00:05:53 -07:00
Charles Lombardo f5c48f92f2 android: Bump minimum version to Android 11 2023-06-03 00:05:52 -07:00