TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Developing for Android is like being a demonetized YouTuber

282 点作者 gbl08ma大约 6 年前

22 条评论

jbk大约 6 年前
After porting VLC on so many platforms, to be honest, working on Android applications is not too bad. Notably compared to other mobile platforms.<p>The tools and IDE are quite good (they need a lot of RAM though), the deployment is easy, the development workflow simple enough and the devices are easy (and cheap) to come by. Even the Play Store console is not catastrophic.<p>A contrario from Youtube, you can get questions answered by Google, and the dev communities are quite large.<p>The API changes are known 6 months in advance, which is good enough, for most cases. And you get them usually only when targeting the new SDK version (except for Android Q... why?!?)<p>What I don&#x27;t like though, is their abysmal NDK support (notably compared to iOS), the removal of use-cases (just use SAF, right? wifi?), but mostly the APIs that are never finished and always buggy (Audio API for example), and the impossibility to send patches to fix those bugs.<p>Finally, the Play Store Console is so-so, but the user-facing part is quite nice.
评论 #19513095 未加载
评论 #19517493 未加载
评论 #19512683 未加载
评论 #19512231 未加载
fattire大约 6 年前
Android&#x27;s Storage Access Framework is really underrated. Just ask the user to choose a document (file or image or whatever) by firing an intent-- then Android&#x27;s built-in file picker starts up and you don&#x27;t have to deal with implementing any of that UI experience. After the user picks the file, a content:&#x2F;&#x2F; URI is returned back.<p><a href="https:&#x2F;&#x2F;developer.android.com&#x2F;guide&#x2F;topics&#x2F;providers&#x2F;document-provider" rel="nofollow">https:&#x2F;&#x2F;developer.android.com&#x2F;guide&#x2F;topics&#x2F;providers&#x2F;documen...</a><p>Best part-- along with the URI, you get the permission to access the document&#x2F;file&#x2F;image&#x2F;audio&#x2F;whatever &quot;for free&quot; without ever having to request it! Because you kind of just did-- the act of the user picking the file auto-gives you the read permission, which can be kept (&quot;persisted&quot;) across system&#x2F;app restarts.<p>This file may not even be on the actual device. It could be on some cloud service or a file server or something else you&#x27;ve never even heard of. Android handles it all for you. An example of this is Google Drive. If they&#x27;ve installed the Google Drive app and it&#x27;s linked to their account, the Storage Access Framework will let the user pick stuff from there just as easily as their own external storage.<p>You can also use the picker to create&#x2F;save a new file or even choose a whole (directory&#x2F;folder) tree.<p>Reading from the content:&#x2F;&#x2F; URI is a little different than from a file:&#x2F;&#x2F; , and I know there are some situations where this won&#x27;t cut it. But starting in Q you&#x27;ll be kind of limited in where those files can be accessed.<p>But in most situations involving External Storage, the SAF is really what you want to use anyway.<p>Watch this little-seen video:<p><a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=C28pvd2plBA" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=C28pvd2plBA</a>
评论 #19510172 未加载
评论 #19510852 未加载
评论 #19510217 未加载
评论 #19511784 未加载
评论 #19510461 未加载
评论 #19512866 未加载
Mindless2112大约 6 年前
I don&#x27;t really mind that some behaviors are being restricted. (Although I think removing the ability for apps to toggle WiFi is nonsense.)<p>The problem is that Google wants to break API compatibility without actually calling it what it is. Your app, which worked for years, is now broken and as far as the user is concerned it&#x27;s your fault. I&#x27;ve been tempted to set the &quot;max API level&quot; property on my apps so that I don&#x27;t have to deal with this anymore. (Oh, wait, Google changed Android to no longer enforce that property.)<p>If Google wants to make breaking changes to the API then give developers a reasonable deprecation timeline and don&#x27;t let users install apps that target old API levels.
评论 #19509551 未加载
评论 #19513720 未加载
fencepost大约 6 年前
Didn&#x27;t they do some of this kind of storage crap back on 4.x? And for that matter, isn&#x27;t this pretty much exactly what Microsoft was doing with Windows Phone?<p>My annoying use case for those was ebook readers - I have a pretty massive library of epubs (Thanks Baen Webscriptions!) and have tended to just dump a ton of them into a folder in storage on a device. I can then pull those up in CoolReader, Moon+ Reader (position sync!) or FBReader as I desire. On Windows Phone every reader app (not that there were many) had to have its own independent download because god forbid you have shared freaking storage.<p>Somehow I feel that this is also going to end up hitting things like third-party gallery apps such as ones that allow tagging, along with the multimedia stuff that other folks are concerned with. Oh, and music. The death of MP3s saved locally to a device and used by multiple apps?<p>So much of what Google has been doing with Android (turning it into a minimal platform for running the massive Google Play where all functionality lives) seems like they&#x27;re heading down the walled-garden that Apple has always been, but with creepy monitoring and ad-driven revenues layered on top.<p>I always dismissed iOS as an option because I didn&#x27;t like how locked-down it was and I really liked swipe-based input, but now that iOS allows keyboards and the locked-down aspect is happening everywhere perhaps it&#x27;s time to reconsider.<p>Edit: removed disparagement of Windows Phone apps
评论 #19513165 未加载
评论 #19513116 未加载
评论 #19512840 未加载
评论 #19514328 未加载
xrd大约 6 年前
Two thoughts:<p>I got a little caught up in the argument about clipboard apps suddenly being broken as if there was no thought put into the impact it would have. Clipboard apps on Android are currently very dangerous since an app can access the clipboard without asking for permission so the user can unknowingly share anything in the clipboard with malicious apps. That&#x27;s insane and Google is right to fix this even if it breaks things for well behaved apps. There is a lot of solid information in this article but starting with that argument set a poor tone.<p>Second, makes you wonder if Google as an organization wants to push you towards web apps &#x2F; PWAs. Google has always seemed to think that getting people to abandon the app model benefits them and hurts Apple and maybe these changes are in search of that end result.
评论 #19508736 未加载
vgoh1大约 6 年前
The constant API changes has been a huge PITA for me both as a developer and as a user.<p>As a developer, I am forced to take time out of developing my new app to update my older apps. This year, I spent 3 months updating my 2 older apps to the newest API. My app&#x2F;game that will be released soon is targeting an API that will be banned from further updates later this year. The problem is that the game framework that I use does not support the newer API yet, and development has slowed considerably on it, so I may be stuck with the (possibly monumental) task of updating the game framework myself.<p>My two older apps should be left alone. My users tend to stick with them because they want to use a familiar interface, and most other competitors change interfaces on a regular basis. But I have had to occasionally remove features because of API changes.<p>And that brings me to my gripes as an Android user - most of my favorite old apps from just a few years back with either no longer work, or have completely changed so that they aren&#x27;t really the same app that I used to love.<p>I am really rooting for a Linux-based phone to eek out some type of commercial viability. I am willing to pay much more for a device with much lower specs and polish, so that I can have a device that respects me as a user.
eh78ssxv2f大约 6 年前
&gt; &quot;Note that all of these things that they are removing for “security”, could simply be gated around a permission prompt you’d have to accept, as with the contact list, or location.&quot;<p>I think letting the user decide on permissions works in practice only if (i) There is a good chance that an average user would understand the tradeoffs of giving different permissions to different apps (ii) A large majority of users are expected to give that permission to the app under reasonable circumstances.<p>If an average user does not understand the tradeoffs of giving permissions to an app, then the operating system may as well do it on behalf of the user. I think this is a common problem since an average user probably clicks arbitrarily on the permissions dialog.<p>Similarly, if a permission is perceived to be not useful enough by most of the users, then there is no point in even having that in the ecosystem.
评论 #19512106 未加载
briga大约 6 年前
Lile the article says, the Google Play Store makes it difficult for newer developers to get established. To get your app featured, you need to meet a whole host of design&#x2F;accessibility&#x2F;localization&#x2F;etc requirements that pretty much make it impossible for small companies to get on the list--they simply don&#x27;t have enough developer time to make sure that every button in their app has flashy touch feedback or to make sure their app is supported in Zimbabwe.<p>That said, I don&#x27;t really feel that oppressed as an app developer. I think Google has done more good than bad here
IloveHN84大约 6 年前
Here people is complaining about Google bad policies..but have you ever seen&#x2F;read&#x2F;experienced changes in iOS ecosystem? All the new SDK versions must support newer devices while deprecating old versions of iOS.<p>At least, you pay a fee of 25$ and it&#x27;s on you (or Google). Paying 99$&#x2F;year and still experiencing some strong frustration at each newer release and change is much more for fetishism
评论 #19511005 未加载
评论 #19510204 未加载
holoduke大约 6 年前
We are currently struggling with firebase messaging in a multi million user android app. Receiving lots of quota errors which are preventing push notifications to work properly. There is contact support with the firebase team, but there is no solution. I learned that the firebase infrastructure is shared with other developers. If one developer is maximizing load on the system it affects others. The fact that you basically have no alternative to firebase fcm is really a pita. Each new version of Android makes it more restrictive. I wouldn&#x27;t be surprised if in 2 years from now every app needs to have buttons with a predefined colour and fontsize
agluszak大约 6 年前
Security on Android is a joke. Google may shut down completely legitimate developers&#x27; accounts and remove useful permissions, yet they will still allow malicious apps like Cheetah Mobile&#x27;s Ram Booster to be in top 10 most downloaded apps of the Play Store...
评论 #19512987 未加载
shams93大约 6 年前
They can also blow you off overnight by mistake but whoops it&#x27;s too late. At one time I had around 25,000 users on my app then a hiccup landed me back at 2 users. As a developer you have no rights. But at least they don&#x27;t charge $100 a year like apple who can also randomly kill your app by mistake easily as well.
iliketosleep大约 6 年前
In fairness, access to features such as call logs and clipboard are too easily abused. I think that most users downloading apps from the Play Store have the expectation that Google is taking care of their privacy. As the author mentioned, advanced users can still sideload any non-approved apps they want, and as advanced users they should understand any security implications.<p>The point I do agree on is that the platform itself is becoming far too locked down, and the example of &quot;Imagine if the online banking of my bank refused to open on my desktop because it knows I know the password for the administrator account&quot; is a valid one and shows just how crazy it&#x27;s getting.
评论 #19511403 未加载
sadris大约 6 年前
I had 90% piracy rate on Android when I did it years ago. Gave up and didn&#x27;t look back.
评论 #19509961 未加载
评论 #19509527 未加载
评论 #19509393 未加载
评论 #19508968 未加载
评论 #19511011 未加载
HillaryBriss大约 6 年前
a GPS nit: the Google Play Store&#x27;s &quot;timed publishing&quot; feature lets you accumulate changes to your app&#x27;s store page hours or days in advance of an update and then click a &quot;Go Live&quot; when you actually want to publish that update and make those changes publicly visible.<p>but apparently it&#x27;s not quite atomic. the Timed Publishing documentation notes say: <i>If you ... add release notes to your app’s “What’s new in this release?” section while you&#x27;re in timed publishing mode, they&#x27;ll be published immediately.</i><p><a href="https:&#x2F;&#x2F;support.google.com&#x2F;googleplay&#x2F;android-developer&#x2F;answer&#x2F;6334282?hl=en" rel="nofollow">https:&#x2F;&#x2F;support.google.com&#x2F;googleplay&#x2F;android-developer&#x2F;answ...</a><p>that&#x27;s so confusing! if I want to update release notes about a new release I&#x27;m going to make live soon, why would I want them to be published immediately? huh?
qwerty456127大约 6 年前
There are just so many apps demanding access to your clipboard, WiFi configuration and other stuff for no valid reason I&#x27;m actually glad to see Google is doing something. The only part that seems annoying is messing with what and how can apps access on the external storage. The μSD card and the OTG-attached thumb drive are exactly the places where I store content like audio, video, ebook, documents and other files, I use them the same way I use my laptop hard drive, having to grant root rights to an app every time I want to perform an operation on these files feels annoying and weird.
lagadu大约 6 年前
While I understand the complaint about google eliminating entire classes of apps, I have to say that I&#x27;m finding it extremely difficult to have any sympathy whatsoever for the OP: he&#x27;s effectively complaining that software requires maintenance, which is something that has always been true and every single one of us learned about project lifecycle management in our engineering management or equivalent classes; as time goes on the effort towards maintaining any piece of software tends to overcome the effort of having it created in the first place.
yogthos大约 6 年前
Personally, I really hope that Librem 5 won&#x27;t flop. While I don&#x27;t see it going mainstream, at least it could provide a mobile platform for technically minded users.<p>I also think efforts like Fairphone are also promising. Android does provide a nice solid base to build on top of. What&#x27;s missing is a community effort we see around Linux to build a completely open platform on top of what&#x27;s already available.
alanh大约 6 年前
I wrote this 10 years ago, and it’s as true as ever: Google signals every day that they don’t care about people, just money.<p><a href="https:&#x2F;&#x2F;alanhogan.com&#x2F;arrogance-of-google" rel="nofollow">https:&#x2F;&#x2F;alanhogan.com&#x2F;arrogance-of-google</a>
Causality1大约 6 年前
Android becomes more hostile to power users with every update. That&#x27;s why I will never buy a phone I can&#x27;t root. The very fact users have to pick a particular phone and then jump through hoops for the privilege is ridiculous.
bibyte大约 6 年前
As an Android user it feels like Android is getting more and more IOS like with every new release. Seriously I wouldn&#x27;t be surprised if they locked down the filesystem (like IOS) in the name of security.
评论 #19512200 未加载
评论 #19513028 未加载
dhbradshaw大约 6 年前
We need a viable 3rd alternative.