Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "release apk"
-
I uploaded a release APK to Play Store with the API host set to the local address I used in dev 192.168.x.x:8000 :/8
-
I was an Android developer in a company, I was told to generate a release APK file to test it locally.
So, to sign the apk, I created a keystore file and the password is my name. they decided to publish the file on Play Store.
I left the company years ago, and still on every update they have to put my name as a password.5 -
Recap: https://www.devrant.io/rants/878300
I was out Thursday at the Hospital. I'm what the doctors would call "Ill as fuck"
So, Friday I’m back in the office to the usual: "How was that appointment?"
I know people mean well when they ask this. So, I do the polite thing and tell them it went as well as it could.
Realistically it does't matter how well it went... They haven't cured Crohn's because I showed up to the appointment. They know I'm fucked already.
But, push it down, add it to the future aneurism.
I had to go through the usual resignation meetings with managers:
"We"re fucked now you're going"
"yep"
"we need to get a handle on how fucked"
"already done that for you, here"s a trello board, very fucked."
"we need to put a plan together to drop all the junior devs in the shit with the work you’ve been doing"
"You need about 4 devs, please refer to the previous trello board for your plan"
Meanwhile, me and Morpheus are in constant communication because all of this is like a Shakespearean comedy.
So, I overhear a conversation between a Junior Dev and the Solution Architect.
[SA] took over the project because he knows better than two tried and tested senior devs -_- (fuckwit).
JD: "It took me one and a half days to build it out"
SA: "Yeah, it must have taken me twice as long... It must be a problem with the project, you should just be able to check it out and run it."
JD: "I know, it has to be wrong"
All of this is about Morpheus' work of art, of an Ionic 3 hybrid app.
I fumed quietly at my desk because I've been ordered by the Stazi to be hands off.
Since Morpheus and me were pulled from the project [JD] and [JD2] were dropped into it to get it over the line.
It"s unfortunate and I was clear and honest with my advice to them: I personally would not take over the project because I"d be way out of my depth... Oh, and the App works, so uh, there's no work to do.
They have been constantly at our desks. Asking fuckdiculous questions about how to perform basic tasks. So they can get Morpheus" frigging masterpiece to the user.
It"s like watching that touch up of jesus that got borked by an amateur. Shit I have google, it's like watching this happen: http://ti.me/NnNSAb
[JD] came to me Friday evening.
"I can’t get this to build to iOS or install on [Test Analyst]'s phone."
Me: "No worries brother, where are you stuck right now?"
[JD] describes the first steps with clear indication he hasn't googled his problem.
Life lesson: http://lmgtfy.com/?q=lmgtfy
Que an hour of me showing [JD] how to build an Ion3 project for iOS. Fuck it, your man's in a bind and he"s asked politely for help. I can show him quicker than he can read 3 sets of docos.
I took him through 'ionic cordova build ios', the archive and release processes in XCode 9, then the apk bundling process for droid. Finally we have an MAM so the upload process for that too.
All the while cleaning up his AppIDs, Profiles, deployment attempts.
Damn they were a mess.
I did this with a smile on my face, not because I could say "I told you so"... But. because when any developer asks you how to do something. If you know how to do it, you should always be happy to learn them some new tricks!
Dude's alright, he's been dropped in the shit. Now I know how badly so I'll help him learn things that are useful to his role, but aren't project specific.
As a plausi-senior dev (I'll tell you about that later); it's my job to make sure my team have what they need to go home smiling!
I’m not a hateful fucker, the guy asked me an honest question so I am happy to give him the honest answer.
I took him through it a few times and explained a few best practices. Most were how to do his AppID and ProvProfile set up. Good lad, took it all on board.
However! In his frustration, he pointed the finger at Morpheus' "David" (ref: Michelangelo).
He miraculously morphed into a shiny colourful parrot and fed me SA's line:
"you should just be able to build from a clean clone"
My response was calm and clear:
"You can, it took me 20 minutes on Thursday evening. I was bored and curios, so I wanted to validate Morpheus' work. Here it is on my iOS device and my Android device. It would have taken me 5 if my laptop wasn’t so horrifically out of date."
I validated Morpheus' work so I have evidence, I trust that brilliant bastard.
I just need to be able to prove it's good.
[JD] took this on board.
Maybe listening to two tried and trusted senior devs is better than listening to a headstrong Solution Architect.
When JD left for the weekend I was working a late one (https://www.devrant.io/rants/874765).
His sign off was beautiful.
"I think I can happily admit defeat on this one, it can wait until Monday."
To which I replied: "no worries brother, if you need a hand give me a shout."
Rule 1: Don't be a cunt.
Rule 2: If someone needs help and you can give it: Give it!
Rule 3: Don't interrupt James' cigarette time.
Rule 4: goto Rule 3.rant day 3 jct resigns crohns resignation solution architect wk71 invisible illness fuckwit illness junior developer4 -
Wasted 7 hours for this:
import moment from 'moment'
Should be:
var moment = require('moment')
What happened? When app running in debug mode all is working without issues! When generating release APK, it crashes when using moment
Fucking hybrid shit apps...13 -
WOOOO!!!!! I BUILT MY FIRST FULLY FUNCTIONAL REACT NATIVE APP! Including the release apk that needs to be signed. Took an entire day and more like an advanced HelloWorld.
But the core functionality works... Though not pretty...3 -
Working on a custom Chromium OS board at the moment
So boards in Chromium OS are specialized versions of Chromium OS built for a specific hardware while maintaining upstream compatibility.
I built a board specifically to be as near as CloudReady's compatibility table as possible, so this is what I have at the moment:
* Most hardware works (Libinput)
* Still working on supplying Nvidia drivers using nouveau (Google insists using OSS drivers, we can't use NVIDIA drivers)
* Still working on making Crostini GPU-enabled by default so I don't always terminate it via vmc
* ARC works as per the open sourced Android Runtime but I need help making the Play Store working
Overall its a bit stable but if anyone's down I'll replicate it on a GitHub repository and I'll let everyone contribute their changes. The aim of the custom board is to:
* Make it work on most hardware possible
* Add android support with APK installation (FydeOS has this but I can't replicate it in CrOS).
* Produce a close to Chrome's release channel.
Here's a screenshot of me using it, it works but I'll need to start over from scratch to make it more contributable10 -
1 - Spend 6 months building an app with Flutter
2 - Try to add in-app purchase. Must upload an apk to google console and register a product
3 - Must launch the app so the product is activated
4 - Console complains apk must contain 64 bits version
5 - Go to the issues tab on github and find a solution
6 - Implement the solution, recompile and send 2 apk files to Console
7 - Did not work...
8 - Find out maybe the console will allow just on closed alpha and beyond
9 - Put apks on closed alpha and fail because the Console wants a new apks with increased version codes...
10 - Recompile and send apks
11 - Console won't allow launching unless the format is using the new App Bundle
12 - Flutter does not support App Bundle with 32 and 64 bits...
13 - See issue about it saying the possible fix is in beta version, just need to update... What could go wrong?
I just wanted to release a damn app
I hate that shit5 -
Why not release the devrant (mobile+web) client on github (and maybe gitlab for people that would actually contribute but are special about the usage of github) so people could contribute to it, leading to faster progress? I thought about it now for a bit and couldn't see any problems with that, since the current apk can be anyway unpacked via freely available tools (appcelerator doesn't make it too hard either anyway 😕) and the website/api isn't any secret either (see the 4000 clients getting patched together out of zombie like api calls)21
-
So, funny story with a bit of self promotion at the end.
I was recently checking out some apps on playstore and found that my first ever , "launched just to experiment" app (released 1.5 years ago) has received more than 5k downloads . I was very happy about that so posted a small message on LinkedIn .
Now , my LinkedIn profile consists of 98% people who are totally strangers and never met me ( is it just me or do you also get a lot of stranger connect requests there?). So my usual post rarely ever goes beyond 5 or 6 likes.
Bit idk how there too my post got 35+ likes and now i was on cloud9.
So i finally decided to kick my ass and release some update to that app ( it had around 70% pity comments like "nice first app,but it should have this x feature",. "overall nice but it could use an x feature " etc.
And boy what my journey was in the last 72hours.
Firstly my madhead laptop started killing me with the battery failures and constant hang.
Then my past asshole self tried to give me a middle finger. So i have this whole partition in my memory where i keep my Android stuff and apps. It has a special folder named published zone and i keep all my published app codes and related files there.
I was fairly certain that this app's code eill be also there,so i opened it, found the code and tried running it.
Turns out my asshole self had tried to mess around the code so much that all the db layer WAS fucked up, all the ui WAS changed and no code was working.
"Not to worry", i thought. I always use git and there would be a correct version some commits before. WRONG. I HAD CHANGED THE WHOLE FUCKING WORKING PRODUCTION CODE AND DIDN'T MAINTAIN A VCS!
Also this was the verbose and shitty java code my 1.5 year before self so loved to write, so it was taking me way more time to figure out what's happening in an already fucked up code.
So i tried a couple of ways to get back my working code :
- I tried looking for a google recommended solution. Those guys take my whole app code build and distribute via playstore, but they provide no means to retrieve back the original code.
- i checked my (occasionally) back up hard disk but no. My hard disk would have 100s of movies from 2016 , but not a useful piece of fuckin code.
- i also tried to get my apk and decompile it via some online decompiler. Here the google again fucks up and don't allow me to get my apk directly. Meanwhile i found a ton of shady websites which are hosting an apk of my app without my knowledge O_o . I tried to decompile on of them but code was even more non understandable than my fuck up code.
So i ended up looking at both the mess up code and decompiled code and coded the whole app from scratch ( well not scratch, i extracted the resources and some undamaged activities from the mess up code . Also github was down for more than 3 hours yesterday , at the same time when i was trying to look onto some repositories)
Lessons learned:
- DON'T FUCK UP WITH THE PRODUCTION CODE
- MAINTAIN VCS
- Your laptop is shit reliable, github is also shit reliable , so save code at multiple places.
- there are way more copies of your code lying on the internet than you think.
Checkout my app here :https://play.google.com/store/apps/...2 -
So we develop several apps for Android.
And since the whole company is full of .Net developers we´re using Xamarin.
That piece of software alone is worth more than one rant.
But today someone called and said he updated to the latest version he got from our server.
But now one of the menu points in the settings menu is opening the wrong mask.
I´m like ... what? Who fucked that one up now. Ok...
I look at the code and, I didn´t expect it to be honest, but it looks alright.
The menu point has the correct id. The function "OnOptionsItemSelected" looks for the correct id and opens the correct activity.
Just to be sure I also check the activity.
Everything good.
So I start up an emulator. Deploy the app in debug. Works correctly.
Create a self signed apk and install it on the emulator. Works.
Repeat the same with a tablet and my personal phone. It works.
Then I install the apk from the server and would you look at that.
It opens the wrong mask.
So it seems only if the app is compiled on the release server it shows that strange behaviour.
And for the love of my 1080ti I can´t figure out what causes it...
Thank you Xamarin! -
Not sure if Google is surprised this happens or they really never face issues using Gradle
Edit:
Took 4 minutes to compile a basic flutter app. But it takes 1.3 minutes to compile a native app. So far liking flutter, still hating React Native tho1 -
I can build my .aab, upload it, have it approved, and release it on Google Play before my stupid .apk IS EVEN DONE PROCESSING ON APP STORE CONNECT
WHAT ARE YOU DOING APPLE FIX YOUR STUPID S3 BUCKET OR WHAT THE HECK ARE YOU DOING WITH THE BUILD THAT IT TAKES SO LONG TO EVEN GET IT IN TESTFLIGHT AAAAAAAAAA9 -
Sometimes, certain features don't work in my app if it's uploaded to the production track in Google Play.
It works in debug mode.
It works in release mode.
It works in the internal testing track.
...but it won't work in the production track? Y'know, the one that actually matters? Theoretically, there shouldn't really be a difference if the same exact APK was uploaded to the internal testing and production track, but... idk dude.
As a result, I implemented a secret way to test a feature in the production build (it's an app to remotely control OBS Studio): if the first connection you added is named "yayeet_" and you open the disclaimer, it tests the feature. Luckily, I got some of the stuff figured out, but I just thought the way I had to test it in production was dumb.1 -
Yesterday I installed linageos without gapps and wondered if there is an official release of the devrant apk without Google store. I acquired my copy from apkpure
-
I was new to Android development back then. One of the project requirements was to implement a feature, that will prevent the users from turning off the phone. Even if the users tries to turn off, the phone shouldn't turn off (specially when the phone battery is sealed). So, I tried a method and it works! But later the users reported that the feature doesn't work! I mean, I can clearly see that the feature works in all the phones I have ever tested. But later I realized that the feature worked in Debug APK but not in Release APK. I mean, seriously? It's not even some kind of pro-guard issues that happens with GSON+Parcelable. So, I did it again using a new method. Again, it works in Debug but not in Release. After trying and failing multiple times, finally I found a solution! May be this bug alone took me almost a week to fix it!2