He investigado preguntas anteriores con este tema pero lamentablemente nada ha funcionado.
Estoy tratando de desactivar la barra de estado de los usuarios que se deslizan desde la parte superior del dispositivo al arrancar con este comando a la consola adb (que se volverá a activar si se reinicia el teléfono, los cambios se descartan después del reinicio):
service call activity 42 s16 com.android.systemui
para que cuando mi aplicación arranque, no puedan deslizarse desde arriba para ver la barra de estado. Puse esa línea en un script llamado init_remove.sh con líneas debajo:
#!/system/bin/sh
service call activity 42 s16 com.android.systemui
cada vez que el usuario reinicie su teléfono, quiero que el archivo init.rc inicie un servicio para ejecutar ese script cada vez. He añadido estas líneas de código al final del archivo init.rc archivo:
# service to remove status bar
service init_remove /system/etc/init_remove.sh
user root
oneshot
A continuación, volví a compilar el uramdisk.img archivo y lo empujó a mi dispositivo rooteado. El nuevo init.rc se puede ver con los cambios añadidos, pero todavía puedo deslizar desde la parte superior para ver la barra de estado.
¿Qué estoy haciendo mal?
EDITAR: Ahora incluso probé esto en el archivo init.rc para iniciar mi servicio desde la sugerencia de abajo:
on property:init.svc.zygote=running
start init_remove
on property:init.svc.servicemanager=running
start init_remove
.
.
.
pero sigue sin haber cambios... ¿están mal mis activadores de propiedades?
EDITAR 2 DÍAS DESPUÉS:
Así que ahora sé que mi servicio está siendo notado cuando init se está ejecutando, pero no puede ser ejecutado debido a los problemas de permisos que se ven a continuación:
init: cannot execve('/system/bin/myscript'): Permission denied
como se ve en la salida de la consola. Mi nuevo servicio actualizado en el init.rc:
on boot
start myscript
service myscript /system/bin/myscript
user system
disabled
oneshot
Ejecuto el servicio como system ya que supuestamente tiene rw, y permisos de ejecución: pero sigue sin poder ejecutarse. Lo que creo que podría ser el problema es que el punto de montaje para el sistema de archivos aparece como de sólo lectura, visto por el comando mount:
/ $ mount
rootfs / rootfs rw,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
tmpfs /mnt/secure tmpfs rw,seclabel,relatime,mode=700 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/shm tmpfs rw,seclabel,relatime,size=1024k,mode=775,uid=1013,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
pstore /sys/fs/pstore pstore rw,relatime 0 0
/dev/block/mmcblk3p1 /boot vfat rw,noatime,nodiratime,fmask=0000,dmask=0000,allow_utime=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0
/dev/block/mmcblk3p2 /recovery vfat rw,noatime,nodiratime,fmask=0000,dmask=0000,allow_utime=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0
/dev/block/mmcblk3p5 /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/mmcblk3p4 /data ext4 rw,seclabel,nosuid,nodev,noatime,nodiratime,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/block/mmcblk3p6 /cache ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/mmcblk3p7 /device ext4 ro,seclabel,nosuid,nodev,relatime,data=ordered 0 0
adb /dev/usb-ffs/adb functionfs rw,relatime 0 0
none /sys/kernel/debug debugfs rw,relatime 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/block/vold/179:1 /mnt/media_rw/extsd vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/fuse /storage/extsd fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
Pero no puedo averiguar dónde en el archivo init.rc puedo establecer la partición que /system filesystem a rw (y ejecutar) cuando se monta.