I am working on an app that is supposed to run as the only app available on a tablet (running android 4.2) (the launcher app just launches my app). The user has to connect to WiFi (select and enter password) and the easiest way to let the user connect to WiFi is to launch the WiFi settings Activity. But the requirement is to keep the user inside my app. So what I need is a way to have the settings inside my app, but I am not sure if that is possible? I have tried to download the source code from https://github.com/aosp-mirror/platform_packages_apps_settings/tree/jb-release/src/com/android/settings/wifi but I am not sure if that is the way to go. It seems to be a lot of work, so before doing that I want to be sure if there is another way. Any suggestions?
Related
Well, today in my workplace i have been given a task. Boss handed me an android mobile, which only runs a application and nothing else. Whenever the mobile starts, it starts the application and users cant nvaigate anywhere from that application. which means the mobile is only dedicated for that application. An ex-employee did this thing.
I need to bring it to normal condition. Then do the same for another application, which is only my application will run in the mobile, as its doing for another app.
How to solve it? Can anyone please help me?
If you do not care about the data stored on that mobile then you should perform the factory reset. This will bring your mobile to the fresh state with only OEM apps installed.
To do it you need to enter the recovery mode. If your device has USB debugging mode enabled then simply connect it to the computer and type adb reboot recovery. If debugging is not enabled then you have to force the recovery mode then you should do a research on the internet how to put your device in recovery mode. For example for Samsung devices you have to turn off the device and then hold Home+VolumeUp+Power buttons.
Once you enter the recovery mode you will see few options. One of them is "wipe data/factory mode" (see example here). Use volume buttons to navigate through options and power button to accept the option (note that touchscreen is not operable in this mode). Remember that this will erase all your data and you will not be able to restore it. No turning back beyond this point.
After the reset you will have no custom apps installed so you can install whatever you want.
If you cannot do the factory reset because you do not want to lose your data then there is other, more difficult option, that requires some Android programming. You can simply write an application that would:
run at startup
get information about installed packages
find the application that has been blocking the device
send an intent that would ask the user if he wants to uninstall the app:
Uri packageURI = Uri.parse("package:"+"some.package.to.remove");
Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);
startActivity(uninstallIntent);
I want an app to only be able to run if the user is using a screen lock password. As far as I can tell there doesn't seem to be a good way to force a user to use a PIN on their device.
There is a good way to force the user to use pin on their device.
The only thing you need is administrator privileges (no root required).
you can read about it here
http://developer.android.com/guide/topics/admin/device-admin.html
with code example, etc..
I'm not sure how to phrase the title of the question.
But the question is pretty simple, there is an app called openVpn for android (which allows a user to connect to vpn server).
I don't want the user to open the app when he want's to access my service, i want it to be seamless, meaning : when some app tries to access my service IP address, i want to catch that event, load openvpn and only then allow the user to access my service.
I wrote few android apps, but never something like this, where do i start ?
Is it possible to monitor where other apps are going (to which IP address) without rooting the device ?
Maybe some kind of driver ?
I searched around the web, and couldn't find anything helpful.
Thanks,
In a unrooted device, you shouldn't be able to monitor the connections made by other apps and in fact, you can't.
As an workaround, I guess you can just launch OpenVPN from you app (if OpenVPN registers itself for any Intent). So, the user doesn't have to remember about it.
Else, you have no more choice than integrating OpenVPN inside your app (the source code, I mean) or just telling your users that they have to launch it.
I have an Android Data collection App which collects sensors data. First, I enter the activity name in this app and then press the start button. After the recording is completed, I press the stop button and exit the app. For another activity, I restart the app again.
In my experiments, now I am using 5 smartphones on a participants's body while performing an activity so its bit difficult to start and stop this app for each activity manually as each activity is for 3-4 minutes and is a bit annoying.
I want to control this app remotely, either through another smartphone or PC. For example, like Airdroid:
http://airdroid.com/
However, Airdroid doesn't have the ability to start and stop (plus enter any data) at this point.
Is it possible to enter a name in this app, start it and stop it on multiple smartphones at the same time remotely ? May be using Bluetooth, local WIFI, or internet.
To summarize, I want to the following actions on an app remotely:
1) Start an App
2) Enter a name in its field (it can be worked around too so its optional)
3) Press start button
4) Press stop button when needed.
I looked it up online but most work has been done on controlling PC though smartphone and not the other way around.
Thanks
Zubkan
Integrate a HTTP server into your app, then you can control it easily using a web browser. A very nice option for Android is NanoHttpd, which comes as a java class.
Edit: Some additional notes:
This probably requires the phone to be connected via WiFi, because carriers might not allow this. And if the phone isn't rooted, you cannot run the server on Port 80, but Port 8000 or so will do.
I would like to develop an app for android and windows phone that calling button causes the application to run when the user press the dial/call button in his smartphone.
Is it possible with windows phone? if yes, how?
What is the function in Android that I can use with to push my app when the user press the call button.
If someone know application that work that way, I would be very happy for some links for that kind of mobile apps you know.
I cannot speak on behalf of Android phones, but in Windows Phone, this is not possible as the OS/SDK does not allow a third party app to intercept any calls made from the phone, hence not possible in Windows Phone