I am currently developing an AOSP ROM and I need to make a system app which is able to write data to CPU text files. The thing is I am able to do it while I have root access but the ROM needs to be flashed and provided to a non-root phone which should still be able to use that system app.
Could someone with prior experience please provide some guidance ?
Related
Currently, I am making an Android app which require Root privileges. Basically what it does is that it flashes a zip file via recovery[Custom Recovery's like TWRP,CWM]. The problem is that I don't know whether multiple Recovery's can be set up like Multi Rom on the same device. And if possible how do I find list of Recovery's that is installed on the device.
What are the differences in priviledges in Android of root access vs system signature?
I'm having trouble uninstalling a system app with system signature, and I read that it can be done via root.
Can someone explain conceptually what the differences are?
In the end I want to know how to programmatically uninstall a system app.
I am debugging an application on a rooted B&N Nook Glowlight. The app runs fine on a rooted B&N Nook SimpleTouch but crashes on the Glowlight.
It seems that the paths in use on the Glowlight have the wrong users assigned to them. How can I get a list of valid users on Android? On a standard *NIX I would just cat /etc/passwd but that file does not exist on this Android system.
I suspect that both devices are Android 2.1. If there is a command that will tell me this for sure, please let me know. The both devices are running Linux kernel 2.6.29 (armv71).
Edit: Note that I mean a list of system users, such as root, and app_12. This is how Unix traditionally handles separation of privileges, and I think is where the problem lies. I don't mean a list of Human user accounts. I'm looking for a CLI command, not an Android API call.
That's available via AccountManager.getAccounts(), if your app has the required permissions to view accounts at all.
From your description, it's possible your app is hardcoding a path that is correct for old Android versions, rather than using a newer, more correct way to get a file's path via Context.getFilesDir(). See http://developer.android.com/training/basics/data-storage/files.html .
We have made some changes in the "skia" library of Android OS (Froyo) and it works well in emulator.
It also worked when we pushed (replaced) the corresponding .so files in to a device.
Now we want to provide this service to the end users. Is it possible to make an application(apk) that people install to perform this task?
If not possible, then what is the best way we can provide the service to others?
If you have created a useful functionality that will be useful for a range of users you can submit your patch to Google code review (you can read how to do this here)
You cannot, unfortunately, unless
you are the device manufacturer (or Google)
you are developing a replacement system image, or target only rooted devices
I believe this would only be possible if the app has root access or you distributed a ROM to your users yourselves.
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.