Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
speng31b
May 8, 2010

Yeah, sorry. It was a bit of a dick response, but only because it seemed like you already knew you were looking for a dev and didn't really want to know how to accomplish this yourself, just wanted to put out a job listing - which is fine. I worked in a Unity and mobile dev client services shop for a few years and I'd say junior, but if you think think your estimation is better, hire for that.

Adbot
ADBOT LOVES YOU

Star Warrior X
Jul 14, 2004

cubicle gangster posted:

Anyone here familiar with mirroring a unity app to another phone, or even just a piece of reference text that can say where someone is in it? no idea how difficult this is. it's so that someone using the app can be given a talk over the phone and given a properly directed sales pitch.

This would need a server of some sort to relay the communication, but is fairly straightforward. I would quote a prospective client two weeks for something like that, one for building, one for debugging.

cubicle gangster posted:

How difficult is it to auto update unsigned apk's over wifi - and what do we need to use to host the apk files for this to happen? Our idea for the frontend website was a simple wordpress login/database template that links to a google drive.
by the end of this year I see us having up to 100 users, who can choose from around 50 apk files to keep on their phone of various presentations that they swap in and out of as they please. We're going to recommend that they back the installers up rather than delete outright (file sizes range from 2-500mb each), so it'd need to auto update if someone installs from an old one - or wipe clean should it not be relevant anymore.
kind of like a private app store, but hopefully not as expensive as that collection of words makes it sound.
There's another thing we were thinking about - how possible is it to automatically generate an app that acts as a front end for these apk files? The idea being they'd go on our website and pick 5 of these presentations, name it, then get a link to download an app which when started is just a launcher for the 5 presentations. it would need to check that they already exist on the phone and make note of it, but it would provide a very clean way to show these without the user having to spend time sorting through apps moving them in and out of folders constantly.

I don't know if it's possible to generate launcher apps from the website. If it is possible, it's certainly not easy. I would solve this problem by doing the presentation selection in the launcher app, not on a website. The launcher app could get the list of available presentations from the web, but would then handle the downloading and launching (and updating) of included apps on the phone. I would quote two weeks for something like this, as well. As far as resources necessary for updating, as long as the downloading/updating is done in the launcher app, all the website needs is a list of all the apps and their latest versions, and the launcher can compare that against its internal list of what's on the device.

cubicle gangster posted:

We do want to hire a coder to handle these as they're a little bit above our area of expertise. Would appreciate an idea of how difficult these things are, how long they'd take and how much it would cost a coder to get them running. If anyone here is or knows someone that could knock the first ones out easily then we've got a budget to get those done straight away. I figure the first 2 might be a little easier and the third is a little more involved (plus might need a reworking of the website?)
I didn't post this in the straight up hiring a developer part because I guess what i'm after most is an understanding of what we're asking.

I kind of combined the 2nd and third ones there, but I hope this is the sort of information you are looking for.

cubicle gangster
Jun 26, 2005

magda, make the tea

Star Warrior X posted:

This would need a server of some sort to relay the communication, but is fairly straightforward. I would quote a prospective client two weeks for something like that, one for building, one for debugging.

I don't know if it's possible to generate launcher apps from the website. If it is possible, it's certainly not easy. I would solve this problem by doing the presentation selection in the launcher app, not on a website. The launcher app could get the list of available presentations from the web, but would then handle the downloading and launching (and updating) of included apps on the phone. I would quote two weeks for something like this, as well. As far as resources necessary for updating, as long as the downloading/updating is done in the launcher app, all the website needs is a list of all the apps and their latest versions, and the launcher can compare that against its internal list of what's on the device.

I kind of combined the 2nd and third ones there, but I hope this is the sort of information you are looking for.

Thank you! that's exactly what I was looking for. great news on the timing quotes, for updating/launching side that's a lot quicker than we were expecting.

For the unity relay/mirroring, what kind of server would it need?
Is there a way to make it work if these phones don't have sim cards or access to wifi, but are close by each other?

Great idea with the launcher app being pre-installed. I think that's the way to go - I assume once that's done is not too much trouble to add a login page on open?
When looking for someone who can do this is there anything in their skill set we should be specifically asking about?

speng31b posted:

Yeah, sorry. It was a bit of a dick response, but only because it seemed like you already knew you were looking for a dev and didn't really want to know how to accomplish this yourself,

Nah, I said for someone to pm me for the first part as a throwaway really but ideally we'd get one person in around july/august and have them do all of the above plus a little maintenance on our artist cobbled together code too. It's important for me to understand what's going into this and how. Maybe a personal quirk but i've never written a check without understanding how someone is doing what they're doing, even if I could never do it myself. Been learning how to read code and solve it's puzzles but I cant write it.

cubicle gangster fucked around with this message at 02:13 on May 3, 2016

Star Warrior X
Jul 14, 2004

cubicle gangster posted:

Thank you! that's exactly what I was looking for. great news on the timing quotes, for updating/launching side that's a lot quicker than we were expecting.

For the unity relay/mirroring, what kind of server would it need?
Is there a way to make it work if these phones don't have sim cards or access to wifi, but are close by each other?

Great idea with the launcher app being pre-installed. I think that's the way to go - I assume once that's done is not too much trouble to add a login page on open?

For relay, you could probably do it from your existing web server.

Without cellular data or wifi, the only other option is bluetooth. I'm sure that can work, but I have no personal experience developing a bluetooth-enabled app, and have heard horror stories about device specific problems with bluetooth on android.

Logging in to your website from inside the launcher app is very easy.

cubicle gangster
Jun 26, 2005

magda, make the tea

Star Warrior X posted:

Without cellular data or wifi, the only other option is bluetooth. I'm sure that can work, but I have no personal experience developing a bluetooth-enabled app, and have heard horror stories about device specific problems with bluetooth on android.

ha, - I posed that because I can imagine it being something I get asked in my boss's attempt at trying to think of something i've not. wifi only feature it is!

Really appreciate the answers, it's helped clear up what was a big grey area.

Tunga
May 7, 2004

Grimey Drawer
For what it's worth I think those time estimates are pretty low. I also wouldn't recommend installing apps via anything other than Google Play because you have to get the user to enable that and it varies per phone as to where exactly the OEM has buried it in the device settings. Note that apps cannot do non-interactive installs/updates of other apps. You can do it via code injection but that's a bigger job, or you have to launch the OS-level app installer/updater but again the above limitation on APK sources applies.

Jabor
Jul 16, 2010

#1 Loser at SpaceChem
Honestly just skimming the problem description, it seems like you're X-Ying a hell of a lot. Why do you need to distribute these presentations as individual apks instead of just as data files for a single app to read?

kitten smoothie
Dec 29, 2001

Jabor posted:

Why do you need to distribute these presentations as individual apks instead of just as data files for a single app to read?

My time in working consulting has made me develop a keen "client asks for X but really means Y" spidey sense, and it's going off like crazy here.

If I were to do this I would use a private distribution channel for a player app (e.g use the play store beta channel for this) and then provide data files for each individual presentation.

If you what you REALLY want is multiple launcher icons for each presentation, then just let the player app export a 1x1 desktop widget that can be tied to launch a specific presentation. Managing a ton of APKs and having them somehow self update is going to send you head first into a world of pain.

cubicle gangster
Jun 26, 2005

magda, make the tea

Jabor posted:

Honestly just skimming the problem description, it seems like you're X-Ying a hell of a lot. Why do you need to distribute these presentations as individual apks instead of just as data files for a single app to read?

Limited ability. We are a team of artists and started this exporting apks from unity because it was easy and one click, and now we are getting a ton of requests to make more. We were sticking to what we know and trying to scale them up but it sounds like we need to get someone in for a few months to help overhaul our entire approach?
A lot of this is completely new to me, but I'm very happy for the discussion, I'm taking notes on it all.

this:

quote:

If I were to do this I would use a private distribution channel for a player app (e.g use the play store beta channel for this) and then provide data files for each individual presentation. If you what you REALLY want is multiple launcher icons for each presentation, then just let the player app export a 1x1 desktop widget that can be tied to launch a specific presentation.
actually sounds way better than what we currently have going on, but there's no way we'd have shipped even one paying job yet if we were trying to do that from the start.
We've got some money coming in and we want to spend it on making the process better and more streamlined. So long as our actual content creation pipeline doesn't have to change we are completely open to suggestion.
Totally on board with users just having one app that does all the managing and downloading for them.

cubicle gangster fucked around with this message at 16:35 on May 3, 2016

Star Warrior X
Jul 14, 2004

cubicle gangster posted:

Totally on board with users just having one app that does all the managing and downloading for them.

This is the sort of thing that it's way easier to do with a full-time employee than with a series of contractors. A full-timer can build you a Unity template that can build unity packages that your main unity app downloads as-needed, and customize it for specific presentations where necessary. It's difficult for a contractor (especially a remote contractor) to get the in-depth knowledge of your business needs and processes necessary to do something like that.

cubicle gangster
Jun 26, 2005

magda, make the tea

Star Warrior X posted:

This is the sort of thing that it's way easier to do with a full-time employee than with a series of contractors. A full-timer can build you a Unity template that can build unity packages that your main unity app downloads as-needed, and customize it for specific presentations where necessary. It's difficult for a contractor (especially a remote contractor) to get the in-depth knowledge of your business needs and processes necessary to do something like that.

Yeah, starting to see this is something that might be a little bigger than adding a couple features and showing us how to use them.
Your bolded part - so can this main app be done in unity, with browsing the database/login/package launching? I'm just curious, that's cool if unity can handle all that. i was thinking it would need to be made as something else.

Star Warrior X
Jul 14, 2004

cubicle gangster posted:

Yeah, starting to see this is something that might be a little bigger than adding a couple features and showing us how to use them.
Your bolded part - so can this main app be done in unity, with browsing the database/login/package launching? I'm just curious, that's cool if unity can handle all that. i was thinking it would need to be made as something else.

Both solutions are possible, and both have advantages and drawbacks. I was specifically talking about Unity packages (http://docs.unity3d.com/Manual/AssetPackages.html) as a possibile alternative to a bunch of apks.

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

cubicle gangster posted:


How difficult is it to auto update unsigned apk's over wifi - and what do we need to use to host the apk files for this to happen?

Just to comment on this, it's impossible, as any APK you install must be signed, and any APK installed on top of an existing app must be signed with the same key. So, you apparently do have some signing infrastructure already that you're not thinking of.

cubicle gangster
Jun 26, 2005

magda, make the tea
Sorry yeah that was the wrong term to use. it's not unsigned - the apk contains the hardware serial of every device it's going to install on.
completely the opposite of what I said now that I read it back..
I meant apps that have not been certified/gone through the google app store process.

cubicle gangster fucked around with this message at 20:25 on May 3, 2016

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

cubicle gangster posted:

Sorry yeah that was the wrong term to use. it's not unsigned - the apk contains the hardware serial of every device it's going to install on.
completely the opposite of what I said now that I read it back..
I meant apps that have not been certified/gone through the google app store process.

The Google app store process consists of

1. Uploading your APK
2. Click "Publish"
3. Wait for the automated malware analysis and other automated systems to clear it for public consumption.

There is no step 4.

Unlike Apple, no human actually vets your application, which is a two edged sword for the ecosystem. You can push a bunch of random garbage up on play if you REALLY wanted to, but consider carefully under which account you would want to do this. Deploying builds for particular customers via Play is a strange but potentially viable system.

Regardless, your path forward remains "hire a competent Android engineer full time to help you grow"

Volmarias fucked around with this message at 15:52 on May 8, 2016

speng31b
May 8, 2010

Volmarias posted:

The Google app store process consists of

1. Uploading your APK
2. Click "Publish"
3. Wait for the automated malware analysis and other automated systems to clear it for public consumption.

There is no step 4.

Unlike Apple, no human actually vets your application, which is a two edged sword for the ecosystem. You can push a bunch of random garbage up on play if you REALLY wanted to, but consider carefully under which account you would want to do this. Deploying builds for particular customers via Play is a strange but potentially viable system.

Regardless, your path forward remains "hire a competent Android engineer full time to help you grow"

To clarify on this, there's no human stopping your app from going live, but certain manifest permissions will trigger a human to retroactively take a look at your app and they can and WILL unpublish it pending new a new submission if they decide you're using certain permissions recklessly. I've seen this happen, for instance, when you request the permission that allows users to whitelist your app against being battery optimized (i.e., opted out of doze mode stuff). They will yank your app from the Play Store and force you to either resubmit without the permission or explain to them in detail by email why you need the permission. No warning, no dialog beforehand - your app is just yanked until you either make your case or resubmit.

Consider this a PSA. This will especially wreck your poo poo if you're trying to maintain some parity with the way iBeacon + BLE allows iOS apps to passively detect proximity to beacons - Android has no good answer to this right now, and apparently if you try to come up with your own (or follow the good examples set by the folks at altbeacon, bless them), Google will gently caress you right on up for it.

I think there might be a few other common reasons Google will retroactively unpublish your apps with no warning, too, and this policy is fairly recent - so for those of us who are used to being smugly comfortable about the lack of an Android "review process", just keep in mind now we have this.

P.S. - the iOS app review times are down to ~1 day or less for many apps right now, so there's also that.

speng31b fucked around with this message at 16:52 on May 8, 2016

Tunga
May 7, 2004

Grimey Drawer

Volmarias posted:

Unlike Apple, no human actually vets your application, which is a two edged sword for the ecosystem.
Google say this isn't true any more, though it's unclear exactly how much manual process is involved. We've noticed in the last month or so that our app updates are going live within minutes rather than hours so it definitely isn't an Apple-like system, whatever it is.

speng31b
May 8, 2010

Tunga posted:

Google say this isn't true any more, though it's unclear exactly how much manual process is involved. We've noticed in the last month or so that our app updates are going live within minutes rather than hours so it definitely isn't an Apple-like system, whatever it is.

Yeah, see my post above. There's no manual review process that gates release, they've added a retroactive "we will look at this afterwards and unpublish it with no warning" policy. That's what Google meant when they announced they'd start adding a human element. Really classy.

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

speng31b posted:

Yeah, see my post above. There's no manual review process that gates release, they've added a retroactive "we will look at this afterwards and unpublish it with no warning" policy. That's what Google meant when they announced they'd start adding a human element. Really classy.

Huh, this is news to me too, thanks.

cubicle gangster
Jun 26, 2005

magda, make the tea

Volmarias posted:

The Google app store process consists of

1. Uploading your APK
2. Click "Publish"
3. Wait for the automated malware analysis and other automated systems to clear it for public consumption.
Regardless, your path forward remains "hire a competent Android engineer full time to help you grow"

This is great actually, I didn't realise it was so fast. The entire point of our app is that it's private though, are you forced to make something publicly available when it's on the play store?

We have an article about us coming up soon too, I might pitch making a custom edited highlights app that can be released alongside it publicly.

And yes, right now we're grinding away on getting paying jobs in, on track for end of summer.
Do you know the best place to find a full time developer? Like is there one centralized site that most developers look for new jobs on?

speng31b
May 8, 2010

You can use Google Play alpha/beta if you don't want it fully public. As far as getting a dev, your best bet is to reach out through networks with trusted individuals, or research and hire a competent recruiter if you don't have any connections you can exploit. Going onto one of those dev job megasites is going to be less than ideal.

cubicle gangster
Jun 26, 2005

magda, make the tea
Yeah we're totally absent on contacts. we have a web team, a 50 strong art team & a bunch of finance but nobody knows anyone with unity/android connections. This'll be the first time in our 20 year's that we use a recruiter. The CEO hates them, but I think he'll relent given what this is for.

cubicle gangster fucked around with this message at 17:55 on May 10, 2016

speng31b
May 8, 2010

If you absolutely have to, get a well-researched recruiter. It sucks because it costs quite a bit more, but you're going to do your product a huge disservice by attempting to filter through candidates yourself with no subject matter expertise. Normally I'd only recommend a recruiter as a last resort, but it might be your best option if you can't just push a little harder on your professional network to find someone who knows someone.

Super Dude
Jan 23, 2005
Do the Jew
I'm having some issues with a RecyclerView using a FirebaseRecyclerAdapter having weird loading behavior. Images flash when I scroll up and down, and sometimes the image order/layout just changes. I took a video of it to see if anyone can help, and I can post my code once I'm back from traveling. Anyone have any initial ideas from this video?

https://www.youtube.com/watch?v=fI1YsmTmLps

speng31b
May 8, 2010

I do some custom animation stuff with recycler view in one of our apps, and just glancing at the recycler view firebase adapter on GitHub and the dependency versions of the sample app there, it might be some of the same issues I've seen.

Without getting too deep into it; one of the newest updates to the com.android.support:recyclerview-v7 dependency broke a bunch of the recyclerview behavior I was relying on. I haven't had a chance to dig into it so I've just avoided updating my com.android.support:recyclerview-v7 dependency version - you might try backdating your dep and/or making sure you're using the same dep version as the firebase adapter sample app.

Anyone else noticed that some of the support UI components are becoming kind of wild-westy? Google been releasing more broken stuff than usual lately.

Tunga
May 7, 2004

Grimey Drawer
Wild speculation, possible you're referencing the wrong one of getAdapterPosition or getLayoutPosition somewhere?

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

speng31b posted:

If you absolutely have to, get a well-researched recruiter. It sucks because it costs quite a bit more, but you're going to do your product a huge disservice by attempting to filter through candidates yourself with no subject matter expertise. Normally I'd only recommend a recruiter as a last resort, but it might be your best option if you can't just push a little harder on your professional network to find someone who knows someone.

A little late, but this 100%. Cheap, lovely recruiters are spam, completely ignored by competent developers, and the best case scenario is that you get a really lovely dev that copy/pastes code from Stack Overflow without understanding what is actually happening. Absolutely do not cheap out on the recruiter.

Glimm
Jul 27, 2005

Time is only gonna pass you by

Anyone at I/O?

baka kaba
Jul 19, 2003

PLEASE ASK ME, THE SELF-PROFESSED NO #1 PAUL CATTERMOLE FAN IN THE SOMETHING AWFUL S-CLUB 7 MEGATHREAD, TO NAME A SINGLE SONG BY HIS EXCELLENT NU-METAL SIDE PROJECT, SKUA, AND IF I CAN'T PLEASE TELL ME TO
EAT SHIT

No but those magic automatic Espresso tests sound neat. Instant running apps is pretty wild too

Jake Armitage
Dec 11, 2004

+69 Pimp

Volmarias posted:

Conveniently enough, a friend of mine was working in this area. Check out https://code.google.com/p/jj2000 and https://github.com/izzytwosheds/jjlossless/ (his library), hopefully that helps.

Hey thanks for this, somehow I missed your reply. Looks like he stopped working on this about 10 months ago though. I did stumble upon jj2000 while researching this. The real problem with this file format is decoding is slow, so most of the decoders are using C code. I think I'll try to reach out to your friend to see if maybe he did that during the course of working on his library.

In researching this, I found that we can use NDK to compile OpenJPEG into a library that we can use, but I have almost put my head through a wall trying to figure out how. I'm thinking I might need to hire a guy who actually knows what he's doing to just build that portion of this for me, as its the last piece of the puzzle in this particular app.

FAT32 SHAMER
Aug 16, 2012



I'm trying to import a project into AndroidStudio.app and it keeps telling me that my gradle location is wrong. Where the gently caress is it supposed to be in OSX?

FAT32 SHAMER
Aug 16, 2012



Turns out you have to click on the folder inside the /androidstudio.app/gradle folder :doh:

Sereri
Sep 30, 2008

awwwrigami

Considering Awful's Crash & ANR page looks like this:


I'm wondering what I can do with a crash report that looks like this if I don't really know what caused it and can't replicate it:
code:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'motorola/ghost_att/ghost:5.1/LPAS23.12-21.7-1/1:user/release-keys'
Revision: 'p300'
ABI: 'arm'
pid: 6704, tid: 6828, name: Compositor >>> com.ferg.awfulapp <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: '[FATAL:synchronous_compositor_output_surface.cc(97)] Renderer compositor context loss
'
r0 00000000 r1 00001aac r2 00000006 r3 00000000
r4 a00ffdb8 r5 00000006 r6 00000000 r7 0000010c
r8 b6ea8e04 r9 a00ff95c sl 00000000 fp a83fc9ac
ip 00001aac sp a00ff4b0 lr b6e529c1 pc b6e767d0 cpsr 600f0010

backtrace:
#00 pc 0003b7d0 /system/lib/libc.so (tgkill+12)
#01 pc 000179bd /system/lib/libc.so (pthread_kill+52)
#02 pc 000185cf /system/lib/libc.so (raise+10)
#03 pc 00014d79 /system/lib/libc.so (__libc_android_abort+36)
#04 pc 000131ec /system/lib/libc.so (abort+4)
#05 pc 01879469 /data/app/com.google.android.webview-1/lib/arm/libwebviewchromium.so

Hughlander
May 11, 2005

Do you do hidden webviews (Offscreen or 0x0 bounds) / run javascript outside of on onscreen browser?

speng31b
May 8, 2010

Uncaught exceptions in WebViewClient callbacks can do this. Maybe try-catch in those more?

Sereri
Sep 30, 2008

awwwrigami

Hughlander posted:

Do you do hidden webviews (Offscreen or 0x0 bounds) / run javascript outside of on onscreen browser?
Well it's Awful.apk so yes, there's a webview. I'm not sure it counts as hidden (it probably does) but if you press the reply button it opens a new activity on top. So yes?

speng31b posted:

Uncaught exceptions in WebViewClient callbacks can do this. Maybe try-catch in those more?
I'll give try-catching them a ... try. Thanks.

Highly Unnecessary
Dec 24, 2009

I'm looking to make like a million dollars off making apps?

speng31b
May 8, 2010

Here's just one man's advice, make a million apps and sell them for a dollar each.

kitten smoothie
Dec 29, 2001

Highly Unnecessary posted:

I'm looking to make like a million dollars off making apps?

Go work for a bigcorp building the mobile apps they need for their business, make $150K/year, do this for 7 years.

Adbot
ADBOT LOVES YOU

Thermopyle
Jul 1, 2003

...the stupid are cocksure while the intelligent are full of doubt. —Bertrand Russell

Build a time machine and go back to when the iPhone was released and make an app.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply