If you're reviewing an Android device (or developing a game) and want to benchmark gaming performance, there's a new app I suggest you check out: TakoStats.
It shows you an overlay with real-time performance statistics and can output all sorts of useful graphs!
The app is in public beta but seems to be nearing a launch soon. You have to unlock the app ($1.99/year or one-time $4.99) in order to collect data for sessions lasting longer than than 5-minutes.
I'm a big fan of how many items you can display in the overlay (the ability to display the layer name might be useful for developers who want to know what particular part of their app is janky), and also how many graphs it produces.
There are a few apps that are similar to TakoStats, like GameBench, PerfDog, and KFMark. I've used all of them, and there are two big advantages that TakoStats has over its competition.
1) Price. GameBench & PerfDog are the most widely used in the industry (PerfDog is particular popular among Chinese OEMs, its owner WeTest is run by Tencent). Both are considerably more expensive. A free APK for KFMark can be found on the project's GitHub, but it seems abandoned.
2) Usage. All these apps essentially use shell privileges to access framestats/other info. GameBench, PerfDog, & KFMark require you to connect your phone to your PC to run a script (the former two do this automatically, the last one manually).
In contrast, TakoStats uses the Shizuku library (in fact, the devs of TakoStats are also the devs of Shizuku). The Shizuku service can be enabled on-device using wireless debugging.
TakoStats also has a very modern interface, complete with Material You colors, a themed app icon, support for new APIs like the Quick Settings Placement API.
My one complaint with TakoStats is there's currently (AFAIK) no way to export the data so you can graph it yourself.
You can export data from PerfDog into a spreadsheet or just take screenshots from the desktop app/web interface on a much larger/wider screen. Same with GameBench.
It shows you an overlay with real-time performance statistics and can output all sorts of useful graphs!
The app is in public beta but seems to be nearing a launch soon. You have to unlock the app ($1.99/year or one-time $4.99) in order to collect data for sessions lasting longer than than 5-minutes.
I'm a big fan of how many items you can display in the overlay (the ability to display the layer name might be useful for developers who want to know what particular part of their app is janky), and also how many graphs it produces.
There are a few apps that are similar to TakoStats, like GameBench, PerfDog, and KFMark. I've used all of them, and there are two big advantages that TakoStats has over its competition.
1) Price. GameBench & PerfDog are the most widely used in the industry (PerfDog is particular popular among Chinese OEMs, its owner WeTest is run by Tencent). Both are considerably more expensive. A free APK for KFMark can be found on the project's GitHub, but it seems abandoned.
2) Usage. All these apps essentially use shell privileges to access framestats/other info. GameBench, PerfDog, & KFMark require you to connect your phone to your PC to run a script (the former two do this automatically, the last one manually).
In contrast, TakoStats uses the Shizuku library (in fact, the devs of TakoStats are also the devs of Shizuku). The Shizuku service can be enabled on-device using wireless debugging.
TakoStats also has a very modern interface, complete with Material You colors, a themed app icon, support for new APIs like the Quick Settings Placement API.
My one complaint with TakoStats is there's currently (AFAIK) no way to export the data so you can graph it yourself.
You can export data from PerfDog into a spreadsheet or just take screenshots from the desktop app/web interface on a much larger/wider screen. Same with GameBench.
๐50โค7๐คฎ4๐2๐ญ1
Mishaal's Android News Feed
Google Authenticator now supports Google Account synchronization
Google responds to criticism about its rollout of sync in Google Authenticator. The company plans to add E2EE support to Google Authenticator down the line.
X (formerly Twitter)
Mysk ๐จ๐ฆ๐ฉ๐ช (@mysk_co) on X
Google has just updated its 2FA Authenticator app and added a much-needed feature: the ability to sync secrets across devices.
TL;DR: Don't turn it on.
The new update allows users to sign in with their Google Account and sync 2FA secrets across their iOSโฆ
TL;DR: Don't turn it on.
The new update allows users to sign in with their Google Account and sync 2FA secrets across their iOSโฆ
๐33
The Google I/O 2023 schedule is now live! Besides the keynotes, there are a ton of sessions to check out.
I will be there in-person to watch the keynotes, so I probably won't get to see the sessions until the next day. I'll definitely let you know if there's anything interesting revealed during the sessions, though!
I will be there in-person to watch the keynotes, so I probably won't get to see the sessions until the next day. I'll definitely let you know if there's anything interesting revealed during the sessions, though!
io.google
Google I/O 2025
Don't miss Google I/O, featuring product launches, innovations, and insights. Tune in for the live keynotes and sessions.
โค36๐13๐ฅ3๐2๐คฏ1
The May 2023 Android Security Bulletin is now live, detailing the vulnerabilities addressed by the 2023-05-01 and 2023-05-05 security patch levels! The public ASB doesn't go into much detail, but once the AOSP tags go live, we can see what's been patched.
Android Security Bulletin (May 2023): https://source.android.com/docs/security/bulletin/2023-05-01
Pixel Update Bulletin (May 2023): https://source.android.com/docs/security/bulletin/pixel/2023-05-01
Pixel update release notes: https://support.google.com/pixelphone/thread/213627684/google-pixel-update-may-2023
Patches are available for AOSP 11-13. Next month's update will also see the release of the third (and final) quarterly platform release of Android 13, AKA Android 13 QPR3, so look forward to that if you're a Pixel user.
Android Security Bulletin (May 2023): https://source.android.com/docs/security/bulletin/2023-05-01
Pixel Update Bulletin (May 2023): https://source.android.com/docs/security/bulletin/pixel/2023-05-01
Pixel update release notes: https://support.google.com/pixelphone/thread/213627684/google-pixel-update-may-2023
Patches are available for AOSP 11-13. Next month's update will also see the release of the third (and final) quarterly platform release of Android 13, AKA Android 13 QPR3, so look forward to that if you're a Pixel user.
๐30
Android has fixed an issue that made it possible to downgrade system apps beyond the factory installed version, which has been abused to exploit vulnerabilities in older versions of system apps.
Notably, this closes the loophole that power users have been using to achieve system shell privileges on Samsung devices.
Full details here.
Notably, this closes the loophole that power users have been using to achieve system shell privileges on Samsung devices.
Full details here.
www.esper.io
Android update fixes vulnerability that let system apps be downgraded beyond factory version
Google has fixed a security vulnerability in Android that made it possible to downgrade system apps below the factory installed version.
๐29๐ค6๐5๐2
Google and Apple lead initiative for an industry specification to address unwanted tracking - Google Security Blog
Google Online Security Blog
Google and Apple lead initiative for an industry specification to address unwanted tracking
Companies welcome input from industry participants and advocacy groups on a draft specification to alert users in the event of suspected un...
๐11๐คก9๐3๐ณ3
With Chrome 117 for desktop & Android, the browser will replace the "lock" icon in the address bar with a "tune" icon. This is to make it clearer what the icon actually represents: A button to show important security info and controls, not an indicator of site trustworthiness.
Chrome 117 will release in early September 2023 and will also bring a "general design refresh" on desktop.
More info here.
Chrome 117 will release in early September 2023 and will also bring a "general design refresh" on desktop.
More info here.
๐41๐ฅฑ10๐3๐2โค1
Today I learned that a lot of Chromebooks only support the SBC codec for Bluetooth audio. Fortunately, Google may be bringing AAC, aptX, aptX HD, and LDAC support to select Chromebooks in a future update.
The Bluetooth stack in Chrome OS is the standard Linux BlueZ, but since 2021, Google has been experimenting with building Android's Fluoride stack for Linux (Floss). This is disabled by default but can be enabled on compatible Chromebooks through a flag.
When building Floss, "nonstandard" A2DP codecs (aptX, aptX HD, LDAC, and AAC) aren't included by default but can be built with the bt_nonstandard_codecs flag. Floss stopped building these "nonstandard" A2DP codecs by default pending a "license and patent review." But now it looks like AAC, aptX, aptX HD, LDAC, AAC, and a bonus Opus, may be enabled by default in the Floss stack.
2532643: Floss: enable AAC and remove it from nonstandard codecs
2574491: TEST: enable Aptx, AptxHD, LDAC
I don't know if/when this will ever land - Floss itself is still not enabled by default on most Chromebooks IIRC - but it's good to see Google potentially address Bluetooth audio shortcomings in Chrome OS.
Qualcomm recently submitted aptX and aptX HD encoders to AOSP's BT stack, so I was wondering if/when that would make its way to Chrome OS/Floss.
The Bluetooth stack in Chrome OS is the standard Linux BlueZ, but since 2021, Google has been experimenting with building Android's Fluoride stack for Linux (Floss). This is disabled by default but can be enabled on compatible Chromebooks through a flag.
When building Floss, "nonstandard" A2DP codecs (aptX, aptX HD, LDAC, and AAC) aren't included by default but can be built with the bt_nonstandard_codecs flag. Floss stopped building these "nonstandard" A2DP codecs by default pending a "license and patent review." But now it looks like AAC, aptX, aptX HD, LDAC, AAC, and a bonus Opus, may be enabled by default in the Floss stack.
2532643: Floss: enable AAC and remove it from nonstandard codecs
2574491: TEST: enable Aptx, AptxHD, LDAC
I don't know if/when this will ever land - Floss itself is still not enabled by default on most Chromebooks IIRC - but it's good to see Google potentially address Bluetooth audio shortcomings in Chrome OS.
Qualcomm recently submitted aptX and aptX HD encoders to AOSP's BT stack, so I was wondering if/when that would make its way to Chrome OS/Floss.
โค18๐9
Linux's DisplayPort Alternate Mode driver (which on compatible devices allows for display output over USB-C) has been enabled by default in android14-5.15 & android14-6.1 GKI branches.
It may be copium, but I'm hoping Google finally releases a Pixel with display output!
Current wired and wireless display output options on Pixels are very limited.
tl;dr:
Wired: Requires DisplayLink adapter. Expensive. Laggy. Needs 3P app.
Wireless: Google Cast. Very laggy.
With the general large screen enhancements and features like an improved desktop mode, it would be great if you could hook up a Pixel to a monitor/TV and get some work done.
Pixel 8 will likely launch with Android 14 on top of either android14-5.15 or android14-6.1 (Pixel doesn't do GRF), but there's no guarantee the USB hardware will be set up to allow for DP Alt Mode. I think right now the pins they could use for that are instead set up for UART?
Having the DisplayPort Alt. Mode driver enabled in GKI has benefits for OEMs too as many actually ship products that use this feature (Samsung most notably for wired DeX), so there's no proof that this inclusion is aimed at Pixel.
โ-
Somewhat related, but USB Gadget HAL 2.0 in Android 14 adds support for reporting whether a connected USB-C cable supports DP Alt Mode.
It may be copium, but I'm hoping Google finally releases a Pixel with display output!
Current wired and wireless display output options on Pixels are very limited.
tl;dr:
Wired: Requires DisplayLink adapter. Expensive. Laggy. Needs 3P app.
Wireless: Google Cast. Very laggy.
With the general large screen enhancements and features like an improved desktop mode, it would be great if you could hook up a Pixel to a monitor/TV and get some work done.
Pixel 8 will likely launch with Android 14 on top of either android14-5.15 or android14-6.1 (Pixel doesn't do GRF), but there's no guarantee the USB hardware will be set up to allow for DP Alt Mode. I think right now the pins they could use for that are instead set up for UART?
Having the DisplayPort Alt. Mode driver enabled in GKI has benefits for OEMs too as many actually ship products that use this feature (Samsung most notably for wired DeX), so there's no proof that this inclusion is aimed at Pixel.
โ-
Somewhat related, but USB Gadget HAL 2.0 in Android 14 adds support for reporting whether a connected USB-C cable supports DP Alt Mode.
๐19๐7๐ฅ3
Google TV is rolling out some pretty big storage and performance improvements!
Here's a summary:
* Storage: App Hibernation automatically hibernates apps not used in >30 days. Hibernation is an AOSP Android 12 feature that revokes permissions, stops notifications, and cleans up temp files.
In addition, hibernated apps also take up less space (up to 25% less), as Google TV will install an "archived APK" that strips the installed app down while retaining app data. This only works with TV apps that use Android App Bundles, which starting this month, is now a requirement.
* Performance: Reduced the time it takes to wake up, the response time of your TV responding to button clicks on your remote, and the amount of time you see the loading animation when rebooting.
Here's a summary:
* Storage: App Hibernation automatically hibernates apps not used in >30 days. Hibernation is an AOSP Android 12 feature that revokes permissions, stops notifications, and cleans up temp files.
In addition, hibernated apps also take up less space (up to 25% less), as Google TV will install an "archived APK" that strips the installed app down while retaining app data. This only works with TV apps that use Android App Bundles, which starting this month, is now a requirement.
* Performance: Reduced the time it takes to wake up, the response time of your TV responding to button clicks on your remote, and the amount of time you see the loading animation when rebooting.
๐ฅ29๐14
Google's working to bring Material Design to Android Automotive OS, but unlike on phones, colors will be chosen by the OEM instead of derived by an algorithm.
According to new documentation published by Google, OEMs will be able to designate "design tokens" that represent the "small, repeated design decisions that make up a design system's visual style and replace static values with self-explanatory names."
These graphics show how Material Design on Android Automotive will work. Apps compile a static library that loads customized token values from a shared library. OEMs can optionally create Runtime Resource Overlays (RROs) targeting this shared library.
OEMs can create RROs targeting the shared library that are enabled in different scenarios, such as for different models in a line or to differentiate drive modes. That way, the UI of any apps that retrieve token values from the shared library can be updated dynamically.
Full documentation on OEM Design Tokens, ie. Material Design for Android Automotive OS, can be found in this page.
According to new documentation published by Google, OEMs will be able to designate "design tokens" that represent the "small, repeated design decisions that make up a design system's visual style and replace static values with self-explanatory names."
These graphics show how Material Design on Android Automotive will work. Apps compile a static library that loads customized token values from a shared library. OEMs can optionally create Runtime Resource Overlays (RROs) targeting this shared library.
OEMs can create RROs targeting the shared library that are enabled in different scenarios, such as for different models in a line or to differentiate drive modes. That way, the UI of any apps that retrieve token values from the shared library can be updated dynamically.
Full documentation on OEM Design Tokens, ie. Material Design for Android Automotive OS, can be found in this page.
๐23๐ฅ6๐คฎ4โค2
Mishaal's Android News Feed
The May 2023 Android Security Bulletin is now live, detailing the vulnerabilities addressed by the 2023-05-01 and 2023-05-05 security patch levels! The public ASB doesn't go into much detail, but once the AOSP tags go live, we can see what's been patched.โฆ
AOSP tag | Build ID
android-13.0.0_r43 | TQ2A.230505.002
android-13.0.0_r44 | TQ2A.230505.002.A1
Changelogs
(Sorry for the delay in posting this, I was out of town until last night!)
android-13.0.0_r43 | TQ2A.230505.002
android-13.0.0_r44 | TQ2A.230505.002.A1
Changelogs
(Sorry for the delay in posting this, I was out of town until last night!)
๐14
There's nothing really interesting to point out in the April 2023 Google Play System Update, but in case you're wondering, here are the modules that have been updated:
ADB: 331314020 --> 331610002
AdServices: 331418100 --> 331611190
AppSearch: 331112000 --> 331311000
ART: 331413030 --> 331612010
Captive Portal Login: 331412000 --> 331610000
Cell Broadcast: 331510000 --> 331610010
DocumentsUI: 331120000 --> 330543000
Media: 331511000 --> 331612000
Media Codecs: 331511000 --> 331612000
Media Provider: 331512020 --> 331613010
Network Stack: 331412000 --> 331610000
Statsd: 331511000 --> 331610000
Permission Controller: 331512020 --> 331611010
DNS Resolver: 331512000 --> 331611010
Tethering: 331511000 --> 331511160
Time Zone Data: 331314020 --> 331314030
UWB: 331410010 --> 331611010
WiFi: 331511020 --> 331613000
And here's the changelog I made.
ADB: 331314020 --> 331610002
AdServices: 331418100 --> 331611190
AppSearch: 331112000 --> 331311000
ART: 331413030 --> 331612010
Captive Portal Login: 331412000 --> 331610000
Cell Broadcast: 331510000 --> 331610010
DocumentsUI: 331120000 --> 330543000
Media: 331511000 --> 331612000
Media Codecs: 331511000 --> 331612000
Media Provider: 331512020 --> 331613010
Network Stack: 331412000 --> 331610000
Statsd: 331511000 --> 331610000
Permission Controller: 331512020 --> 331611010
DNS Resolver: 331512000 --> 331611010
Tethering: 331511000 --> 331511160
Time Zone Data: 331314020 --> 331314030
UWB: 331410010 --> 331611010
WiFi: 331511020 --> 331613000
And here's the changelog I made.
๐21โค2
"Google is collaborating with Android hardware manufacturers to help ensure APIs for background work are supported predictably and consistently across the ecosystem.
We are excited to announce that Samsung, representing one of Androidโs longest partnerships, is our first partner on this journey...
'Since One UI 6.0, foreground services of apps targeting Android 14 will be guaranteed to work as intended so long as they are developed according to Android's new foreground service API policy.' - Samsung"
Read more: https://android-developers.googleblog.com/2023/05/improving-consistency-of-background-work-on-android.html
We are excited to announce that Samsung, representing one of Androidโs longest partnerships, is our first partner on this journey...
'Since One UI 6.0, foreground services of apps targeting Android 14 will be guaranteed to work as intended so long as they are developed according to Android's new foreground service API policy.' - Samsung"
Read more: https://android-developers.googleblog.com/2023/05/improving-consistency-of-background-work-on-android.html
Android Developers Blog
Improving Consistency of Background Work on Android
In Android 14, we are adding new functionality to the existing foreground services and JobScheduler APIs. Learn more.
โค48๐18๐ฅ8
Following the Bluetooth, WiFi, and UWB stacks, Google will next turn Android's NFC stack into a modular system component, ie. a Project Mainline module!
It's too early for this to happen in Android 14, but the NFC stack could become a Mainline module as early as Android 15.
(H/T luca020400 on Twitter)
It's too early for this to happen in Android 14, but the NFC stack could become a Mainline module as early as Android 15.
(H/T luca020400 on Twitter)
โค31๐13โคโ๐ฅ6
One of the most annoying parts about using most Android tablets or foldables is being forced to flip the device over because an app doesn't support landscape mode.
This is a big issue on the OPPO Find N2 and OnePlus Pad, for example. Fortunately, there's a fix.
Tutorial: How to stop apps like Authy, Venmo etc. from being locked to portrait mode on Android tablets/foldables
This is a big issue on the OPPO Find N2 and OnePlus Pad, for example. Fortunately, there's a fix.
Tutorial: How to stop apps like Authy, Venmo etc. from being locked to portrait mode on Android tablets/foldables
๐25โค6๐คฏ3
My tweet thread summarizing the Android-related things Google announced at I/O 2023 during their main keynote event, including new features in Google mobile apps, Android 14 changes, Pixel features, and new Pixel hardware.
๐30๐3โค1