I have been searching the internet wildly for an answer to this question.
We are creating custom android app for internal use only and we would be installing that on custom andoid devices. We would like to have full control of the device through the app. The end user of this device is not meant to use anything other than the app on this device. I have sealed out all the possibilities of getting out of the app except this one possibility where the program tries to update itself and asks for user permission.
Let me repeat again, This app is not meant to be put on market, only for use with custom devices designed for specific purpose. So security is not an issue here.
The device is rooted and we have done a lot of alterations with it. But I cant quite figure out how to make this update work.
If you have any ideas/solution please share it with me. I can do anything with my device, (even dig a hole in it if required :P) as they would be custom made, and would be packaged with us before going out. Just have to make it work.
If you are talking about internally installing the APK with like an update application specifically designed to update your other application which is not managed by Google Play you may want to look into this. So between xjaphx's answer and the link I just shared you will be able to install and maintain updates.
This is as simple as how it works.
Pre-condition:
Get devices rooted
Prepare Android development environment (Android SDK, platforms-tools)
A cable to connect PC and devices.
Steps:
Open command-line if Windows or shell if Linux
type: "adb push YourApp.apk /system/app"
That's done for installation of the app. Reboot and check whether your app works or not.
Related
So I made a small Android App for inhouse use in my company.
The App is supposed to run on dedicated Android 6 devices (portable computers with bar code scanners attached) to scan bar codes and talk to our servers within the company wireless network.
This inhouse wireless network does not allow internet access for security reasons.
Now I am looking for a simple way to roll out version updates of my Android App. With no internet available, the normal app stores are ruled out.
I would prefer, if version updates could be installed silently without user interaction.
I am aware of F-Droid Server, a custom App Store Repository. As far as I understand, it would be quite some effort necessary to get that up and running in my environment. Maybe too much, considering that the devices need to run only one single app.
Is there a more simple way?
Maybe like programatically downloading a new version of my .apk from a url and then autoinstall?
Any ideas are appreciated.
Is there a more simple way? Maybe like programatically downloading a new version of my .apk from a url and then autoinstall?
Yes, it seems more simple (25 lines of code) to programatically download an apk from your own server and launch an install. Here is a question with lots of details (and checkout the 2 questions it links along to):
Android: install .apk programmatically
The install may require user interaction; a prompt where the user clicks ok or cancel.
Also you have to host the APK somewhere. If you don't want to build a web service for this you could host static files and use a naming convention or timestamp to decide what/when to download and install.
Any ideas are appreciated.
A suggestion about programatically updating is to write a separate simple and robust app that only does that, vs having code in the main app to self-update.
I have a running app on fox pro which is developed using DOS. And its working very fine on the computer system. But due to the requirement of the users, now they want it to run on the android device.
So
1. Can you please tell me whether any plugin or bridge is already there in the market or should I have to develop one. I am basically looking for the bridge which can make communication between Android and fox pro. I don't know whether this is possible or not.
2. Any solution to open console in the android device where I can execute DOS commands in Android device like I do in the computer system.
Specifically I don't want for redevelopment, but if there is no way to achieve then let's see.
Apparently, you can run DOSbox under Android:
http://androiddosbox.appspot.com/
I've never tried this, but maybe it will provide what you're looking for.
Between a combination of psgsdk and Appery.io and software that helps convert screens from SCX files into Appery, this is a lot easier now. I've done this several times and have apps in both Google play and IOS app store that are FoxPro apps. The back end and all code is Visual FoxPro and the front end is Appery. #abigdreamer on twitter gets ahold of me -- let me know if I can help -- Know this post is years old but others might need the same.
I would like to start looking at development for Android applications (nothing huge, just for learning). Before I begin, I would like to find out whether or not development on the Android phone I use daily would be corrupted or changed in some way if I used it as a development device.
I probably won't put anything on the Market, but I would just like to test out how everything "works" with Android development.
Any help that will guide me is great.
Thanks.
It shouldn't cause any problems at all. The only problem I can imagine is that you have to enable installation of applications from unknown sources (i.e. not the marketplace). You just need to be sensible not to go installing applications from dodgy places.
No, not at all! Sorry for the shortness of the answer, but that's it.
The only problem I can think of is writing to internal memory more than usual, but if you install a lot of new apps, the effect will be the same, so it's nothing special. And as alextsc said, if you write something and it doesn't work, just remove it, and that's all.
Not at all. But even better, when you set everything up (Eclipse, the Android SDK and the ADT Eclipse plugin) you'll also get an Android emulator that you can test your development projects on virtually.
Still, it's just fine (and recommended) to do testing on an actual device, but if you're just playing around, you can likely just use the emulator and only deploy to your device if the end result is something you'd like to show off to your friends!
Best of luck!
Hey in addition to the above answers,
You should actually test on your device when you are making an app that uses one of the following :
GPS, or wi-fi to get user location
when you want to use any phone sensor in your app
when you are trying to integrate camera/ camcorder in your app
also you might need to actually test phone call/sms functionality integrated in an app
otherwise the emulator just works fine
I have a rooted Android tablet. I've copied my native server application (Linux ARM ELF) to /data/tmp and it runs. There is only one thing missing: I want to launch the server when the tablet boots up. There are several circumstances, which makes the mission easier:
the device is already rooted, I can copy anything to it,
no installer required, the mission is completed, when the autostart is once set up,
my server program requires no settings, no files, no libs, no root right, nothing at all.
I don't wanna play with creating APK package, nor play with NDK. I am searching for the easiest way. It is OK, if there's different solution for different Android distros (I am insterested in current versions, 2.2 and 2.3).
Maybe I should use inittab? Anyway, I prefer "most official" solution, if we can talk "official" in case of a rooted device, let's say I'm looking for solution with "as less hack just as possible".
Update: I found this: http://www.androidenea.com/2009/08/init-process-and-initrc.html - I'll try it and close the question, if it's OK.
The easiest way is an APK. I believe you can create a service that launches on boot and then execute your ELF from there. Your APK can also provide a "configuration" app which lets you install/uninstall the ELF so all files can be cleaned up if the user removes the application APK.
I have an app in Android Market which is a standalone app that's essentially a full conduit to an SQLite Database(add, change, delete, inquiry). Some of my potential clients have asked to see a sample of my work, but they don't have an Android device.
Other than just showing them screenshots etc., is there a way I could have them go to a website where they can actually run it & check it out.
I'm thinking there would be a programming element involved (convert app to a mobile website essentially?), hence posted this question here.
Not quite sure where to get started. Any help would be appreciated.
You can use one of the patterns like MVC/MVP/MVVM to create your core library and then develop additional UI variants for different clients: Android, java applet etc.
Alternatively you can develop a mobile web site as you suggested and use simple android app to navigate built-in browser to it. This might be somewhat transparent to most users. I think Android MSN client uses such an approach.
I see 2 relatively easy options.
Give them an .apk designed to only
run on the emulator (you can check
the ID, the emulator ID is 00000...)
and they can boot up an emulator and
run it. If you're worried about them
reverse engineering your .apk you
probably shouldn't go down this
route. Or if you don't want them to
have to install the emulator
Set up a virtual machine and let
your clients remote desktop into it.
Give them permissions to only run
the emulator or however you want to
set it up