android


Does an app that uses system permissions need to be in the /system/app folder?


The project that I am working on in our company makes use of some system permissions. This is achieved by:
Adding the following line to the manifest: android:sharedUserId="android.uid.system".
Signing the app with our platform key.
Placing the app in the /system/app/ folder during our ROM creation process.
The device we use is not rooted by default so to update the APK we have to recreate the ROM with the new APK in place which is a very time consuming process. From what I understand, this is because, without root privileges, I can't write to /system/app.
As a proof of concept, I created an app that restarts the device when you press a button which makes use of the "android.permission.REBOOT" system level permission. I achieved this by:
Adding the following line to the manifest: android:sharedUserId="android.uid.system"
Signing the app with our platform key.
Then I simply loaded the proof of concept app using ADB which places the app in the user apps folder, /data/app, and it worked just fine. I did not need to place it in /system/app for it to work. In addition, if I created a ROM without our app in it, and tried to load our app with ADB, it worked just fine in the /data/app folder.
So my question is: Is it necessary to place the app in /system/app if you're using system permissions or is the user app folder, /data/app, sufficient? If the /data/app folder is sufficient, then what do you accomplish by putting your app in the /system/app folder? Other than preventing users from deleting the app for instance.
The answers I found were somewhat contradictory, this does not mention the /system/app folder. This says it's part of the process.

Related Links

Start an Activity from a BroadcastReceiver with a result
HTC Flyer Pen Menu
Android tabHost NullPointer
how to get facilities of API11, while API10 is installed currently
Autocomplete function with proprietary database
How to store QR image in a mobile database
android - eclipse: display google maps using coordinates obtained using gps
Android EditText within TableLayout runs off
How to make bookings from my app
How to start the activity from a particular location and of particular size , not covering the full screen
Android UI: how to align a TextView and two radiobuttons to occupy 1/3rd parent each?
Android Market developer groups
Update a ListView from AsyncTask spawned on a different Activity
Android TabHost content not showing
how to bound set of points (custom shape) and touch event on it android
LogCat not displaying TAG “SMS”

Categories

HOME
api
cobalt
eslint
redux-form
ns-3
3d
youtube-data-api-v3
numbers
interface
solaris
alarm
static-site
simulink
google-apps
spring-session
webix
google-schemas
windows-ce
gruntfile
fileserver
soci
oledb
database-connection
sar
symbols
googlebot
kendo-mobile
question2answer
joptionpane
flask-sqlalchemy
siri
moses
delimiter
ms-access-2003
8051
paperjs
userdefaults
python-2.6
paragraph
simplecv
biztalk-rule-engine
android-maps-extensions
navigator
swagger-php
xcode7.3
connection-pool
protein-database
projects-and-solutions
oracle-service-bus
xmldocument
memory-mapping
puredata
mongotemplate
context-sensitive-grammar
oracleclient
edit
avx
libjpeg
cpu-cache
py2neo
gameplay-kit
gets
greatest-n-per-group
windows-azure-queues
beamer
expectations
jclouds
clipboard.js
embedding
halcon
lazybones
ess
ons-api
ocra
graphics2d
pyobjc
teamcity-9.1
fits
addressing-mode
administration
strawberry-perl
mdichild
ray
ecslidingviewcontroller
bin
jammer
mbunit
rolify
gpars
ui-select2
onload-event
cardreader
wcf-configuration
usertype
failing-tests
predicatebuilder
jsr286
infobright
relative
google-floodlight
w3c-geolocation
timthumb
event-receiver
ruby-1.8
load-time
dot-emacs
binomial-heap
httpcookie
online-storage
blind
appliance
netbeans6.1

Resources

Mobile Apps Dev
Database Users
javascript
java
csharp
php
android
MS Developer
developer works
python
ios
c
html
jquery
RDBMS discuss
Cloud Virtualization
Database Dev&Adm
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App