We used to be able to send files over Bluetooth before the iPhone came out.
We used to be able to send files over Bluetooth before the iPhone came out.
Apple likes to have far more control than that.
> Export photos and videos to an external storage device
> You can export photos and videos you took on your iPhone directly to an external drive, a memory card, or other storage device.
> Note: For photos and videos that have been edited, the unmodified original version will be exported.
> Connect your iPhone to the storage device using the Lightning or USB-C connector, or connect the device directly to your iPhone.
> Go to the Photos app on your iPhone.
> Select the photos and videos you want to export.
> Tap the Share button, then tap Export Unmodified Original.
> Tap your storage device (below Locations), then tap Save.
Note that you have to request permission from Apple's app before you can actually export the data. The filesystem doesn't gate you this way.
https://support.apple.com/guide/iphone/import-and-export-pho...
So here's a question: can you export modified versions of photos that have been edited? Well, that seems to be tough. Searching around, you find wild discussions like this: https://discussions.apple.com/thread/8567773?sortBy=rank
This is the kind of shenanigans I'm referring to. No access to just copy data from the app. Android has a similar issue with apps, but at least the filesystem is a first class citizen on Android. That is, I can simply copy any photos directly off my phone like it's USB mass storage.
As far as why you can’t export your edited photos, is that iOS doesn’t actually exit your photos. It applies the edits from what I can tell as a separate “filter” that’s stored as metadata so you can undo your edits. How do you export your edits in a cross platform way? Would you rather have destructive edits? Maybe you would. But either way there are tradeoffs.
And files have a different data store than a photo.
You just plug any mass storage device into your iOS device and it shows up in the Files app and you copy and paste files like you would in the Finder or Explorer. In fact, in the Files app, if you have a third party storage service like Google Drive or Dropbox, they also show up as location in Files along with iCloud. Meaning you can copy directly from Google Drive to your mass storage device.
You can’t do that with any random “file explorer” on Android - ie a consolidated location for local storage, cloud storage from 3rd party providers, network connections, and mass storage.
I'll take care of cloud storage with SyncThing (or whatever) -- I'm the kind of guy that values being able to choose the parts. I don't buy "cold medicine", I buy ibuprofen, diphenhydramine, pseudoephedrine or whatever else I decide, and I'll dose each based on my symptoms. Because that's just better than some prepackaged thing. And I do the exact same thing with computing. Works great. But Apple fights.
The whole world of mobile computing is actively fighting giving the customers the ability to compose their tools, which strips away user agency, and creates all these issues with "big tech" being monopolies and locking users in. This is at the root of what the DMA is about, I think.
https://news.ycombinator.com/item?id=9224
With iCloud, if I drop my phone in the ocean by mistake, I can walk into the Apple Store, buy another phone, log in and my new phone looks and acts like my old phone with all of the bookmarks, icons, app data, settings etc being restored.
If you through your phone in the ocean and gestured on another one, would your new phone look just like your old one?
And it’s been discontinued for Android….
https://forum.syncthing.net/t/discontinuing-syncthing-androi...
If I can’t in fact throw my phone in the ocean when I’m away from my computer, go buy another phone, log in and everything is automatically restored, it’s a poor solution
I'm not sure there even is a good place where programs can store their internal system files without requiring root other than mixed in with the user Home.
/var/run/user/<uid>/ ?
Or what do you mean?
But sure, an OS could in theory use something like /var/cache/<uid> instead of ~/.local/cache. I'm not aware of anything that does, though.
----
The correct way for what I intend would be /var/lib/user/<uid>/, but yes this does not exist on my host. But I honestly don't see why non-ephemeral per user data shouldn't be put into /home. It is definitely user-specific, under the control of the user, instead of the OS, and when you want to move your user to another host (or sync it), you definitely want to include that data as well, so putting it across the OS filesystem sounds kind of dirty to me.
> But I honestly don't see why non-ephemeral per user data shouldn't be put into /home
I think I agree— as long as the conventions are clear, I think it's reasonable to have some hidden dirs under $HOME set aside for configuration and cache and so on.
Maybe there's value in exposing a single directory as the root of a sandbox for user files, so users have to go farther out of their way to screw things up, especially depending on your audience. Maybe a decade from now Linux desktops will have something like this, because most apps will run sandboxed in Flatpak, unable to write to the root of $HOME. (Idrk how that's organized, though— maybe apps are just allowed to edit "their" dotfiles without modifying their location.)
But I'm not sure that obscuring configuration data's place in the filesystem in that way is really desirable or necessary. I doubt most users inspect or think about hidden directories on Unix-likes unless they're looking for them anyway.
I think on most desktop distros users only have writing access to their home directory and maybe /tmp.
There ideally should be some separation between your actual documents and system utility stuff. I guess this has mostly happen already with real files sitting in cloud storage. With local storage just being replacable.
All the more reason to put this stuff into the user directory, so that it is automatically included in backups and syncs done by the unaware user.
> The current /home has so much absolute junk that it's easy to not know where your stuff is.
Not my experience. Application data of application XYZ is either in ~/.xyz or in ~/.{config,local,cache}/xyz, depending on whether the application is FHS compliant or not.
goes in ~/Documents
> photos
go in ~/Pictures
> downloads
go in ~/Downloads
> Not auto generated configs.
No Linux applications ever put configuration data in any of the aforementioned locations...
> it's easy to not know where your stuff is.
?????
> On iOS/iPadOS nothing happens other than not having the documents you saved in there.
That is, frankly, a ridiculous test for the issue under discussion. Even if everything was stored under a top-level subdirectory set aside for application data in a perfectly orderly way, nuking $HOME would still break things.
Besides all that, hidden directories in the root of ~ are conventional¹ places to store application config files and so on, and can't be mistaken for conventional places to store documents. On most Linux-based operating systems, the conventional place to store documents is (obviously) ~/Documents, which is created ahead of time for all users. That folder doesn't generally end up polluted with things that aren't documents.
> On iOS/iPadOS nothing happens other than not having the documents you saved in there.
If you delete /var/mobile or any of the things that $HOME points to in the context of some app, you'll definitely lose app settings.
The app sandboxing on iOS does something nice by sort of forcing app configuration data to live within conventional directories, but none of that is captured in the "what if you delete ~" test. (The fact that $HOME isn't really directly exposed to the user sort of does; the local files you're comparing to $HOME on Linux are actually $HOME/Media on iOS.)
----
1: https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch03s08.htm...
Never have been different. What did your relatives doing?
There were cases where phones were not consistent. Pictures from the camera, or saved from MMS, or saved from the Web, or screenshots, did not all go in the same place. Just like you would have on a desktop :) I don't remember that well the pre-2010 android, but it had some issues too.
Even to this day, WhatsApp saves photos to the gallery, but in its own album. At least on iOS those are part of the regular gallery so you'll always find them (an album is just a "tag" on the photo). Android has a dedicated album too, but the picture set is distinct from the main picture gallery. So are screenshots. That's more control and power, but utterly confusing for older people. Younger relatives are fine, older fail to navigate around this and find "the picture your auntie sent to me through whatsapp". Yup, it's there, but not in the main camera roll.
This is what I mean by "you know where the pictures are going".
PS: Apple botched the UX of the gallery app in the last two iOS versions so much that even I, a young tech-inclined person, loses my way around. So do my relatives. They're sorta catching up /s
I understand that some people get confused and overwhelmed by a directory structure, but I see that as an education problem, not a UX problem. I was taught all of this in elementary and middle school computer classes in the '90s and early '00s. Having this knowledge early on made me less afraid of my computer, made it feel less like a magical black box, and gave me the confidence to learn more complex topics on my own.
Computers become way more capable when the people using them understand fundamentals like directory structures and command line usage. I don't think either of these things are as difficult to learn as reading, writing, and arithmetic (especially if you already have a base level education in those three things).
If more "everyday people" just had a little bit more knowledge about these things, they would be able to do way more with their computers with less of a reliance on proprietary solutions that funnel them down whatever path makes someone else the most money.
i want file system access, but as a power tool. the 50 clicks through different folders is irrelevant to my most common 5 patterns of use. those should be a single click, or 0 clicks
Where is zoxide for my phone? Why is there so little innovation?
Trillion dollar companies can't come up with a single new thing. Or rather, won't come up with a single new thing because they're just useless rent seekers.
It's absolutely pathetic.
You said there's nothing wrong with how Apple exploits their target market.
Scummy behavior being normalized is what's wrong with it.
"The file disappeared. I can't find it."
"Look in the download folder."
"How do I get to that?"
This is why I've avoided non Pixel phones since the Pixel5 came out. None of that 2 or 3 apps for the same thing so everybody can get their ad cut payout.
There was almost a whole decade there where Apple pretended that the feature just didn't need to exist.
> There was almost a whole decade there where Apple pretended that the feature just didn't need to exist.
edit: oh, I think I get it. My original post wasn't intended to be read "iOS invented the file explorer, has Android also a file explorer app" (which would be silly, of course) but "when Files app released, the AOSP file explorer that commonly ships as the default was lacking, has this improved (caught up to Files app)"
Android is possibility/ (overdose of) options Apple is polished (and late).
Different strokes for different folks
You are correct that each app can only see a specific part of the filesystem, unless the apps are by the same developer and part of an App Group.
Apple added copy/paste in iOS 3.0 in 2009
It was around that time it (Files app) got a major refresh.
Also, on Android, you can choose any file explorer. You're stuck with Files and it sucks (but it looks nice).
Now "bluetooth" I could buy (and I do not miss at all).
Android misses the mark so much with MTP and iPhone… waves frantically at iTunes.
(At least, in a weird bizarre twist, the iPhone’s Files app is actually really useful for me. I find myself formatting flash drives, copying stuff from network shares, etc, all from my phone and it’s so nifty to have nearly-first-class features there.)
I know that read/write conflict concerns are what got USB Mass Storage mode removed from Android, but surely there's some way to resolve that. Like it wouldn't bother me a bit if Android just locked the device and put it in "file transfer mode" when it's mounted on a computer, similar to how iPods used to and how Kobo e-readers do now. It'd be worth the universal robust multi-platform support.
Depending on whether the respective kernel supported it, you were still unofficially able to switch removable SD cards into mass storage mode (though only with a rooted phone), although somehow, even if I remembered to officially unmount the SD card from Android first, it somehow still often led to mild filesystem corruption (luckily never anything fatal, though) that required regular chkdsk-usage.
> Or they could have figured out a new version of MTP that supports basic features like concurrent access and normal metadata. Or they could have gone for SMB/NFS over a virtual network link.
My current phone no longer supports the above mass storage mode-hack for the removable SD card, which annoyed me enough that I actually wrote my own SMB server app (https://github.com/buttercookie42/SimbaDroid), because all other SMB servers for Android that I'm aware of were either outright broken, unsupported, buggy or fiddly to use. Sadly the only open source Java-based SMB server only supports SMBv1, so you're stuck with that, and you still need root for full comfort, but within those limitations it works quite nicely.
* Apple doesn't allow 3rd Party watches to send text messages. The Apple Watch is allowed to do so.
* Apple doesn't allow 3rd Party to take actions on notifications. The Apple Watch is allowed to do so.
* If you want to use the internet on your watch, you must: 1) install a 3rd party app, 2) keep that app open. Closing the app closes the connection to the internet. The Apple Watch does not have this restriction.
* 3rd Party watches cannot detect if you are using your phone. This means that they will notify users of notifications even if the user is looking at the notification. The Apple Watch does not have this restriction.
* Apple does not have ‘interprocess communication’(IPC) like Android.
* Apple restricts making 3rd Party App Stores. This makes it difficult to make a community of people making watch faces.
All points come from Pebble's blog [1]. This is just a single type of integration that Apple intentionally makes difficult, there are many others (e.g. 3rd Party Photos App, ...)
[1] https://ericmigi.com/blog/apple-restricts-pebble-from-being-...
Edit:
Here is the procedure I was talking about and all prerequisites for it to work:
* Install real mobile firefox, including installing firefox addons I've built for myself. Firefox on iOS is a safari skin
* Install web browser security updates without also updating my entire OS. On Android, firefox is an app. on iOS, safari is a part of the OS that cannot be updated independently
* Install an open source app my friend built without paying $100/year or having to reload it every 7 days
* Build and install an app without owning a macbook or other macOS device, just using linux
* Filter notifications to my garmin smartwatch by-app
* Change the messenger app that handles SMS
* Have a notification center that syncs between linux and my phone (i.e. KDE Connect doesn't work https://invent.kde.org/network/kdeconnect-ios#known-behavior... )
* Have reliably working file-syncing (i.e. syncthing for iOS) because background tasks are something you can do well in android, and barely at all in iOS
* Have access to the source code to debug and fix problems
* Have the ability to flash my own custom kernel / rom (not all android devices, but many)
.... Really, not being able to write and install my own app without paying apple $100, and without owning a macbook is the big dealbreaker, followed by iOS restricting APIs needed to do all sorts of things like proper notification handling, proper NFC, etc etc.
It amazes me that so many people on the "hacker news" forum are okay with their primary computing device being wildly hostile to the hacker spirit, to the desire to tinker around for fun and learn and hack on things.
Cross platforms, really? So for example between a Blackberry and a Windows CE phone?
Yes, it was part of the Bluetooth file transfer spec[0] and possible between any two devices that implemented it correctly.
0: https://www.bluetooth.com/specifications/specs/file-transfer...
It’s still a classic Apple “the open standard sucks so build a proprietary one that’s great but only on iPhone”
Trying to send a video file over Bluetooth would be miserable.
Bluetooth was a huge upgrade because you no longer needed to do that.
My mom was upset that she would lose her photos, so I puzzled over it for a long time trying to figure out a way. Finally, I realized I was being stupid and missing the obvious: both phones had Bluetooth! I paired them with each other, dug through Razr menus, selected the photos, and did a Bluetooth file send. As expected, the photos went right over. Well, I shouldn't say right over because it was very slow, but it worked just as it should.
This was just as broadband was getting popular, so those who had it usually downloaded MP3s and then distributed them at school through Bluetooth. I remember one friend using her phone as a bridge to copy files from me using Bluetooth and sending to another friend's phone using IR.
This was across all the classroom, this definitely wasn't restricted to the nerdy clique. We found out that chatting through notes exchange worked pretty well and then it spread like wildfire. SMSes were expensive in my country!
This was like 20 years ago. Maybe 2006-2007. Twenty years later we're commemorating that Bluetooth File Exchange over WiFi is now interoperable between the only two major mobile OS as if it were a revolutionary technology. How backwards it is.
Phones other than iPhones can still share files with each other and with computers using Bluetooth. But people instead use apps like WhatsApp or e-mail for file transfers, even in places where iPhone's market penetration is near zero.
kind of worked with flip-phone resolutions, but tiresome with multi-megabyte pictures of today
On the other hand, with the ubiquity of always-on Internet access and cheap data plans, in most situations where Bluetooth would have been used, I now see WhatsApp being used instead.
Here is a more hilarious attempt to break Vendor lock from the 90s!: https://youtu.be/TcJBXgmdX44?t=98
Things were more fun back then. Now Google vs Apple is so BORING! :D