Why are there so many apps that could be websites?
Seriously. I don't want to install something on my phone when the dev is just using a WebView, if that's what it's called. When the app is basically just a website with the browser hidden.
What's the reason for that? To attach the customer? To sell the app for money? Is there more ad revenue that way? Do you reach more people?
(Are there any good reasons for it, too? Security, maybe?)
And you know the rest of the reasons when at the first start your minesweeper app needs to have access to your photos, location, camera and microphone.
most apps are just websites wrapped inside a container and made an app.
Why?
Because they dont want you to use the actual website.
why?
Cause your browser gives you a LOT of protection against invasive data mining/profiling/tracking/etc.(Not saying its perfect, We all know about fingerprinting and HTML5 canvas tracking and what have you..but its a LOT better than the information that apps can steal)
Data mining/profiling/tracking/etc that these companies want to do to you, because you are a product to them, not a customer.
And how do they do that with an app?
Permissions.
Ever wonder why your pizza ordering app has to have access to your contacts, data storage, camera, microphone, etc etc etc? Its not because its needed for you to order pizzas. Hell, you can do that on a website with no permissions, so why is it needed for an app on your phone?
So they can steal/mine your data for profiling/tracking/marketing/being sold to others/etc.
Lemmy has a real problem with this. It’s like all of the angry people from Reddit came here and now we just have an angry circlejerk about anything the crowd doesn’t like.
We had a project once that ran completely fine as a website except for the ability to scan bar codes. That one thing forced us to create an app and the rest of the app was just showing the website.
Can't you use camera on browser? I actually seen a project that does some complex things using camera [1] and it ran in browser. I'm confident scanning bar codes is possible.
There are JS barcode libraries out there, some better than others, some free, others paid. A few years back at a corporate job I built just the thing - a web app designed to replace a 3rd party mobile app. The back-end was Laravel + various AWS services, with a responsive front-end made with Tailwind.
The requirements were to make it mimic most of the mobile app's functionality. There was also location tracking via browser APIs (to track the cargo at all times) and a barcode scanner. I used a paid library for that, and it was quite expensive, but very reliable. So it can definitely be done as a web app.
There's no one single answer to this. Some have been mentioned in other comments, but it's a combination of a few different things:
Control: They have much more control over your experience as a native app than a web app.
Ad revenue: It's significantly harder to block ads coming through the built in web views, and/or they can just build them in natively which is even harder.
Integration: it's easier to do IAPs or subscriptions through native controls, which means less resistance, which means people are more likely to end up doing it.
Data: it's easier to hoover up user data via native APIs than through the browser. There's way more accessible, especially if you can ask for a bunch of permissions and people don't notice/care. This makes any user tracking they do way more effective and any data they sell way more valuable.
Notifications: Recently browsers have started adding support for this but it's not as effective. Push notifications are a huge boon to user engagement and this is a huge money maker. Having native notifications is a huge sell in this equation.
Persistence: If you have your app on a user's phone, it ends up in the list of apps, meaning they pass by it very frequently. It's basically free advertising and living in their head without them even noticing. This is especially true on iOS where basically all of your apps are in your face all of the time.
Performance: Native apps run way better and can look way better than web sites. If you just use web views this is mostly moot but still may make a small difference.
I'm sure I'm forgetting a few but you get the idea.
Websites are basically just inferior versions of native apps, and even if you use a hybrid/web view approach, you get many of the benefits and have the option to "upgrade" to a real native app later.
That being said, I fucking hate this shit. I don't agree that companies should do this, but it hands down does make financial sense. In a society entirely driven by capital and profit, it makes sense, but from a consumer perspective, it fucking sucks. I don't want to have to install the Facebook app to see some small businesses "web site" that's really just a Facebook page. I don't want to install reddits shitty native app to read more than 2 comments off a post about a solution to my problem.
It's legitimately consumer hostile, but company profits are more important than people in our society.
I think there's a big one that you've missed and it's that most people are not like most people here. Believe it or not there are many people out there whose first instinct is to search their app store for what they want. They walk among us.
If I'm McDonald's, and a significant number of my customers search for me and instead get KFC and Burger King as top results with no McDonald's app in sight, it's seen as a marketing problem.
This is spot on. We recently had to do this to one of our products and I didn’t want to at all, but we could do push notifications reliably that worked for both Android and iOS.
We have a website application and we don't have a mobile app. At least once a week we get a support ticket from someone asking why we don't have an app.
We reply that the site is fully responsive and to just use the site through their mobile browser. But people don't like this. They want an app.
People are morons but some non technical ones seem to genuinely prefer an "app" even if it is just a web view hybrid one.
We'll probably have to cave and provide it eventually.
the free ad space on your home screen. Sure it's a small ad, but you see it all the time.
notifications. Even if only a small fraction of users allow them, it's a lot of free advertising. And yes, you can put notifications on websites, but that's not as reliable or as expected as native app notifications.
permissions. The more legitimate apps may provide some sort of additional functionality that their website can't provide on its own. The shadier ones sell the data they get from the sensors all over your phone.
data storage. Technically web storage is a thing, but it's definitely not something you want to hang your whole business on right now.
integrations. You can integrate, for example, Google Pay/Apple Pay on a website, but it's more of a hassle. In an app, it's practically drop-in. Same with the share functionality.
why not? If you already have a mobile site and can make an app from it reasonably easy, there's no reason not to. You've become multi-channel with no extra work.
There are probably other reasons, but those are the ones that make sense to me, being in the industry.
Excellent points. I'd just add one more: user friendliness. The average user prefers to click on an icon on their screen, rather than open a Web browser and either type in the URL or access bookmarks, which tends to be rather clunky on a phone.
Also capabilities. Some things are a hassle that doesn't always work as expected (e.g. camera) and some things are just not possible at all (NFC). Even your airline app that simply shows a barcode that you scan at the gate will want to increase display brightness while it's doing so and be able to show you a notification when you have delay or gate change...
All I see are people talking about consumer apps that could be websites, but it's a problem in the business world, too. My small business makes a service for other small businesses and all our big competitors use apps for their system while we use a web app. Some even restrict to only iOS or Android, too. It blows our potential customers' minds when they see that ours is just a website with at least as much functionality as the competition and the ability to access it from anything.
I have no idea why anyone would do it differently as it's WAY easier/cheaper to maintain this website than deal with app ecosystems. And there simply aren't enough users in this space to merit data scraping like with consumer apps.
They want to wall some of their content off so it's not easily harvestable on the web by competitors. But most of all, they want to have full control of your user "experience" so you can't use browser extensions (like ad blockers). It's all about money and control.
To spam you with ads and steal more of your data of course! Look at the insane permissions on these apps: There's no reason for them to have access to your contact list, text messages, app manifest, etc. The vast majority of apps have wildly unnecessary permissions because it gets the companies more of your data.
On my desktop I have browser tabs for WhatsApp, messenger, Skype, gMailChatTalkHangouts and slack. I know slack's app was ass but I miss the rest.
I want a discrete app that doesn't crash with chrome and which sits in my tooltray so I don't have to fucking search for it whenever something makes a noise (ctrl-alt-a). I want to see it from the blink in the corner and not by scanning 31 windows of 7 groups of 12 tabs each.
Often times I just give up and hope it also makes my phone spork too so I can grab it there.
Progressive Web Apps were supposed to marry these schools of thought, but maybe we hoped for too much because it's still garbage Chromium under the hood.
Just make everything for maximum interoperability I guess? I recently saw and forgot the name of a system for creating and displaying Github-like pull requests and associated discussions that are sent in via email. A very simple web interface displaying plain-text that could reasonably have been extended any way you like. I am beginning to see the appeal of the plain-text revolution.
I would say in some cases, people are conditioned now to expect an app, even if it's basically a website. I think in a mobile context, most non-techy people don't normally think to open up a browser and say, browse Amazon or something. Instead they go for the Amazon app on their phone, and browse/shop/whatever there.
I wouldn't say this is exclusive to phones either. I once worked on a product that was essentially web-native, but they had to ship a desktop app because their market expected it, even though it was only a web-view wrapper to the website. No offline storage, no difference in behaviour, or need for some specific API; nothing. I guess you try explaining to boomers that a web-view desktop app is unnecessary.
The data vacuuming and additional marketing are just added benefits for the app developer, if they go down that path (they usually do).
Because the majority of internet connections these days are from a mobile device. And if you want to reach the average person, you have to be where they are looking.
I think it's really a shame that mobile OS's are so locked down that the only real way for people to download things is through some centralized app store.
I worked at a company that wanted to kill their app (just a web view for the site anyway) but trying to convince all the users to move proved unfeasible
I suppose having a dedicated "launch this website" button has some level of convenience over typing out the URL
I've just gone through this pain with my company. It took 14 months to finally get rid of the app and the pushback from users was horrendous.
We eventually broke the app to the point that all it did in the end was show a page that made users open the site in their mobile browser and use the "Add to home page" feature present in mobile Safari, Chrome and Firefox to put an icon on the homepage like an app.
Absolutely worth it though to not have to deal with Apple's developer hostile and shitty app tools/ecosystem while paying for the privilege. I don't miss having to deal with the "moving target" nature of Android and iOS either where everything breaks or has a new API every 5 minutes. Mobile browsers are so capable now with javascript APIs to access most of the device hardware so apps really aren't as necessary as they once were.
The number I've seen floating around a few places is that app users are, on average seven times more profitable than web users. Reasons include:
The app being on the device acts as a reminder to the user to interact more
It's easier for an app to send notifications to get users to open it and interact more (Android has reduced this by requiring permission; browsers required it long before)
There are more limited options for blocking ads in an app
There are more opportunities to collect data in an app
Are there any good reasons for it, too? Security, maybe?
Security for the user? Probably not. "Security" for the developer in that they can prevent people from using the app in ways that aren't profitable? Likely.
I built an app like that. It uses a WebView, although all the HTML is self-contained and it only accesses the internet to make API calls.
Mobile app development really sucks, as a developer. The frameworks, the build tools, the specialised languages that can't be used anywhere else - it's a hot mess. Making an 'app' using that method is much quicker and easier for me because I get to use HTML, CSS and JavaScript, which I already know and have the tools for.
But why make it at all? If you want to use HTML, CSS and JavaScript you can do that, and not even have to build and deliver the pointless box that you put the content in, because everybody has Safari, Chrome, or another browser on their device.
Yes, I have built it as a website app also and that is the primary UI. The mobile app is just a read-only viewer for quick access to the information people need on the go. It's not entirely pointless.
A lot of people don't know how to install a PWA (which I also provide, if they want it) and have never done so. They also just expect there to be an app in the app store and when they hear about a tool someone else is using that's their first port of call.
OP is talking about apps that are basically links to websites.
They design the website entirely, but it's not available through a web browser -- only the app. But fundamentally, it's a website that a browser would be able to run.
I know that; when you develop a website, you typically design mobile-first and then design the desktop version afterwards. If you're just building it as an application you can skip a whole lot of CSS and design nonsense that would go into that process.
I always assumed the reason was to get more tendrils into your phone for that sweet sweet data $$$ and allowing themselves more control over shoving notifications in your face.
I'm sure there are some "data harvesting" reasons, but honestly, the simplest is likely the truest:
Most people aren't computer-savvy, and having an app is much easier for most users than going to a website (either directly or through a bookmark that they probably won't ever be able to find again).
One must remember, always and forever: most people aren't us/you. Just because something is easy for you to do doesn't mean it's easy for everyone else.
Is it dumb for me that T-Mobile has an app that just goes to a webview that I could get through my phone browser? Yes. Is it dumb for my parents? Absolutely ten thousand percent no.
The value (in terms of money made/saved/protected) that a company gets from having an app instead of a website only is probably ranked in this order:
1 - ease of use for the majority of customers, reducing tech and customer support calls, angry customers, lost goodwill, bad reputation
2-99 - same as #1
100 - data harvesting
For certain things it makes sense to have an app imo, for instance music streaming services the desktop experience just has more features, plays better with my preamp/headphones and so on.
For something like Netflix it’s extremely irritating that they either intentionally gimp the experience of using the service on many browsers (IIRC Netflix is capped at 720p in Firefox still) or try to force users into using the app (see YouTube attempting to automatically redirect you to the app anytime you try to watch a video in the browser).
I'm torn - apps are brutal for privacy but I really like the isolation from browser and all other sites. I typically clear browser cache on every exit so for apps that I use regularly, I am forced to sign in every time if going in through browser.
Wish browser apps had better isolation for multiple sessions.
I have it and use it. It's great (works for most sites). My point is actually the opposite - there are certain sites/services that become very unpleasant to use if you have to log in everytime you open the browser.
The advantage of apps is that for those particular services you don't have to reauthenticate each time you open them (the trade off being insecurity.
Using websites would be great if I could have a separate (isolated) instance per site. That way I could kill browse history for general browsing.
(The absolute worst are the apps that hop out to the browser (especially when they hard code Chrome, which I avoid where possible on Android.))
On the PC (by way of example), edge and chrome have web applications that are handy (think YouTube and YouTube music) but.... they share credentials! I keep a separate login for YT vs YTM (because google completely misunderstood the reason people keep videos separate from music when they killed the excellent Google Play Music). So... When I log into one, flips the default login for the other. Now, if they were separate apps, like on Android, the sessions are separated - as they ought to be!
I will say that Duck Duck Go's App Tracking protection is a fantastic way to tackle the way apps 'phone home' so much, however, since it leverages a full tunnel (yet local) VPN technique, you have to disable it if you want to connect to another VPN service.
(Bottom line - website based services are great, but, for goodness sake, I wish one had the option to persist various sites, but in isolation.)
FWIW, I've been using lemmy in a browser exclusively, not even a PWA and it works fine.
I'm not aware of a PWA implementation that supports multiple tabs either.