Android developers no longer need Windows USB drivers
fabiensanglard.net
fabiensanglard.net
It's one of the biggest reasons I prefer android. That and the work profile that allows me to compartmentalise all work stuff and other privacy invading shit without needing a second phone.
It separates your app list and files into two sections, work and personal. The work apps get a briefcase overlay icon.
I use it to separate my work apps and to shield privacy invading apps from my main profile. You can use the insular or island apps to invoke it on pretty much any phone. Even AOSP has it. MDM can also invoke it, which is what it's intended for.
It also allows you to turn off the whole work profile with one button. Great if you do use it for work and you want to have a quiet weekend. The benefit for your employer is that it stops you from copying work data to private apps.
If you do use it for work it stops your employer from seeing your personal side like what apps you have installed. This can be pretty privacy invasive. For example if you have tinder or Grindr installed. I work in MDM management and on apple I can see this. On Android when work profile is used I can't.
And some of the functionality it offers doesn't really have an SSH equivalent, like the install command.
I set up an OpenSmartphoneTestFarm (openSTF) instance at the office so people working from home could fully control smartphones inside the office to debug wifi issues. Because some countries had lockdowns at different times, so it could be that production users could work in the office but some of our support people couldn't. This way they could still test things inside the actual office. And we didn't have to supply our support people with tons of testing phones. Only issue was that it never supported iOS but we use mainly Android anyway for corporate phones, because dual-use (work/private) is a lot better on android. Only in the US they demanded to have iPhones and we outsource the support there.
It worked pretty well actually. https://openstf.io/
But they dropped support on it and moved to another product (device farmer) which never seems to have materialised at all. I don't know what happened to it but we just kept running openstf until the end of the pandemic. It worked fine anyway. But it's too bad it seems to be completely gone as it was actually a great piece of software. A bit overly complex to set up with tons of different docker containers for each part of the service, it was clearly meant for huge distributed installs, which we didn't really need.
All I need to do is some virtual networking fu via 'netsh interface portproxy' inside both guest OS and host OS.
This definitely would have made it to Pixel 3, per the commit message (https://android.googlesource.com/platform/system/core/+/db64...), it was my primary development device when I implemented this :-)
Everything that's CTS-compliant that got Android 11 should have support: the only change needed from the OEM would be to write a 1 to /config/usb_gadgets/g1/os_desc/use in their USB HAL and there's a CTS test to make sure they did so.
> Bingxing Wang's awesome driver[0].
Windows Precision Touchpad Implementation for Apple MacBook family/Magic Trackpad 2
Apple hates their own customers for not having written that themselves, and forcing us to use some half-assed driver included in Bootcamp that made the whole thing seem state-of-the-art circa Windows 98.
That said, my MBPr eventually phased out of Windows support (Intel GPU drivers aged out; more and more apps were losing/removing acceleration features due to (unfixed/unfixable) driver and hw bugs, didn't meet Win11 CPU requirements but ran Win11 fine), it now runs Linux with Waylandized KDE; Linux supports the entire feature set of these trackpads without any work).
But yeah, imbushuo is doing some serious work and deserves recognition.
Also the only way to install using GPT, as Bootcamp's bootloader hides the GPT header (and OSX uses 2 out of the 4 MBR partition slots) and forces Window to use "legacy single partition mode", which means no Bitlockering C:\ as the EFI boot partition (required since Vista, no matter if it is a EFI/GPT or Legacy Bios/MBR machine) is where ntldr lives now (same way in the MBR days you had /boot on a different unecrypted partition, so you can boot linux, load the initrd, and then unlock the root partition); Windows uses 3 partitions, EFI boot, C:\, and the recovery partition.
Once I realized that, I blanked the entire disk, and purged OSX forever. I made that decision 10 years ago (the MBPr is still alive!), and I never looked back.
I’ve also been using CyanogenMod/LineageOS since my first android (HTC Desire Z/T-Mobile G2, damn do I miss that full keyboard) and it’s great to be able to always use the same OS.
What do you use it for that makes it better than just picking up your device?
A combination of Google Assistant, Talkback, USB-C-to-USB-A-Adapter and Keyboard, a Bluetooth keyboard, scrcpy, Anydesk and a new Pixel phone for practicing helped get some data off the device and even do a migration to the new phone. Needed all of the above and a lot of trial and error and time!!
But I just have scrcpy up in a window on one of my screens/workspace constantly. The keyboard shortcuts work quite well and I don't have to break my flow just to do something on my phone. Clipboard is synced as well.
If I get a notification I can check what it is about without taking my hands of my keyboard etc.
I'm sure it sounds a bit convoluted, and each usecase (meetings, notifications etc.) have other better/more-native solutions but the experience all in all is a game-changer.
To the point where "just picking up your device" is too much of a bother. Why not do it through scrcpy instead? Quicker, proper keyboard etc. and the mouse works really well. To the point where I kind of miss right-click is "back" when I'm outside the scrcpy window.
So it is both for going back and "quitting" applications.
On the desktop it wouldn't even work in the browser, because I work by tabbing new pages and closing tabs rather than navigating back.
So to be fair, I don't want it om my desktop. Because I really don't want my applications to mimic the behavior they do on phones, that would be horrible. But the end result is really nice for the weird usecase of running a phone inside a desktop.
Even if you plug in standard device classes like HID?
But if it doesn't fall into one of those buckets Windows just doesn't enable the device whatsoever.
As noted in the article macOS and Linux do the opposite. They allow userspace programs to enumerate unknown USB devices and manually communicate with them.
Dumb.