Notification/toast msg from root shell script possible? - Android Q&A, Help & Troubleshooting

Hi,
I am searching for a way to send a notification or a toast messages (Android 5 and above) from a running shell script. Is there any possibility to do so? (I am not a java developer!)
I want to be notified if my userinit.sh has completed or things like that.
Tnx,
Enkidu

Related

[BUGLIST] AOSP 2.2 ROM Bugs and Fixes | Post questions here

If you ...
find a bug or problem on 2.2, post here
find a solution on how to fix the bug, post here
want to get help on how to fix the bug, post here
anything else, goes here
This thread are meant for bug/problem solution and reported bug list of 2.2 custom ROM which i will try to manage, so people are not posting same bug, and asking for same solution all over again in X10 Custom ROM AOSP thread.
Limitation
Cannot Mount via USB
2.2 Custom ROM put the SYSTEM partition on your phone memory and the DATA partition in your SD card. That is why you cannot dismount the SD card from Android to mount to your PC.
No App2SD
2.2 Custom ROM is still running on 2.1 Custom Kernel which not supporting this.
Bug list
#0001 - WiFi not working - Fixed on 2.2
#0002 - Random android.process.media force close - Fixed on 2.2
#0003 - Home button not working, and no Lock Screen - Fixed on 2.2
#0004 - Cannot install certain APK (Angry Bird)
#0005 - No radio, no network and flashing Home - New on 0.0.2
#0006 - ADB shell have SU access, but Titanium Backup cannot work - New on 0.0.2
#0007 - SD Card non-ascii folder show as ???
#0008 - Facebook Contact Sync not available
#0009 - CPU Governor set to performance by default
Solutions for bugs
#0001 - How to enable WiFi on 2.2 Custom ROM
1. Try to enable WiFi, of course it will not work.. just do it.
2. WiFi will goes off automatically
3. Run
Code:
adb shell /system/bin/wlan_tool
4. If the adb stucks, just press CTRL+C
5. Repeat step 4 until you crash the phone
6. After reboot, your WiFi will work.
or
Code:
adb shell killall servicemanager
Post Reference
#0002 - android.process.media FC solution
0.0.1 compiled with prefilled databases which invalid for your phone
Code:
adb shell
cd /data/data/com.android.providers.media/databases
rm *
reboot
or this will ensure no invalid data anymore but will remove fixes for bug #0003
Code:
adb shell
cd /data/
rm -r data
mkdir data
reboot
Post Reference
#0003 - Fix Home Button & Lock Screen
Download sqlite here
First pull the db file first.
Code:
adb pull /data/data/com.android.providers.settings/databases/settings.db settings.db
Then add value to its content
Code:
sqlite3.exe settings.db
sqlite> INSERT INTO "secure" VALUES(67,'device_provisioned','1');
sqlite> .exit
Then push back the db
Code:
adb push settings.db /data/data/com.android.providers.settings/databases/settings.db
Then reboot.
Post Reference
#0004 - Solving installing APK problems
Currently the 2.2 Custom ROM does not support app2sd, and some APK may configure it self to be installed in sdcard.
So we force it to install on internal with code below
Code:
adb shell pm setInstallLocation 1
adb install -l com.rovio.angrybirds.apk
Post Reference
#0005 - Fixing radio, wifi and home screen flashing problem
Run this command
Code:
adb shell killall servicemanager
Post Reference
#0006 - Fixing SU access for Titanium Backup
Run this command
Code:
adb shell chmod 4755 /system/bin/su
Post Reference
#0007 - Fixing SD card mount command to show unicode letters
Modify your chargemon file so its enables utf8 for non ascii letter.
You need to do this on 2.1 ROM, not 2.2 ROM. The file is located in /system/bin
look for this
Code:
mount -t vfat -o rw,noatime,nodiratime /dev/block/mmcblk0p1 /sd
and change into this
Code:
mount -t vfat -o rw,noatime,nodiratime,utf8 /dev/block/mmcblk0p1 /sd
Notes:
You must use a Unix/Linux format capable text editor for this. Notepad will not work.
You can try ultraedit for it.
Post Reference
#0008 - Fix Facebook Sync
Download the ContactsProvider.apk here, then install to your Android using push command
Code:
adb push ContactsProvider.apk /system/app/ContactsProvider.apk
adb reboot
Post Reference
#0009 - Using SetCPU
By default is Performance, fast but wasting too much battery.
Use SetCPU and set to OnDemand.
Post Reference
2.2 Custom ROM FAQ
How and what happened if upgrade from 0.0.1 to 0.0.2?
Just copy data.img and system.img replacing your current one in FreeX10 folder.
This will replace all your 0.0.1 data, be sure to back up first with Titanium Backup
WiFi is running and connected, but cannot browser
This problem seems to be occurring on selected few.. You can set static IP to your android.
Go to Settings -> Wireless ... -> WiFi, then press menu button. From there you can se static IP
Is there a possibility of Timescape and Mediascape for 2.2 Custom ROM
The answer is yes, its possible.
I managed to install Mediascape.apk into 2.2 Custom ROM, but cannot run.
The reason it cannot run is because UX is using a lot of things in Framework-res.apk, images, layout, styles, and etc which cannot be copied directly from SE 2.1 into 2.2 AOSP. It requires someone to properly put all values, resolving conflicts inside Framework-res.apk before the UX can run, which will take months or at least weeks if someone dedicated his or her day job for it. Then after that we still need to deal with external files. So in conclusion, while it still possible, i don't think anyone will do it because of the time demanding process.
I want to help devs solving bugs, i found one but i don't know what actually happend.
While usb connected, from command prompt, type
Code:
adb logcat > logcat.txt
This will output a lot of debugging info into logcat.txt file, later if you find bug, you take a look inside the file.
See anything error or info related to the bug, and post here.. When writing the logcat.txt output, but them inside
Code:
brackets.
Do not post everything.. post few lines related to the bugs.
2.2 Custom ROM Testing Tools
Service Menu
WARNING: DO NOT INSTALL THIS UNLESS YOU DO DEVS, END USER DO NOT INSTALL
PURPOSE: MAYBE FOR TESTING DEVICE FEATURE, MIGHT BREAK SYSTEM APPS
Enable SE Service Menu for device testing. For devs only. You need to put adb stuff in the directory for install.bat to run.
Install framework
Code:
adb push permissions /system/etc/permissions
adb push lib /system/framework
adb reboot
Install applications
Code:
adb install app\bootinfo3.apk
adb install app\ServiceMenu2.apk
adb install app\com.laac.launcher.servicemenu.apk
Nice work. THis is handy
As i posted in the Main thread!
I think some of the force closes, (mainly acore and google framework) and the fact that the market crashes, come down to importing a vcard!
I imported vcard, get many force closes, market stops working, I clean install and don't install the vcard. Everything functions fine.
I do believe this is the reason!
Greeet ~~!! but can u tell me the seloution of this proplem :
i was run 2.2 001 ok ? then i back to to SE 2.1 to change old system.img & data.img by the new on FreeX10_alpha-release_0.0.2-UPDATE , ok ? then i reboot my phone into 2.2 , it run but like u make a refresh on computer ! evry 3 second !
thnx
Ahmed radi said:
Greeet ~~!! but can u tell me the seloution of this proplem :
i was run 2.2 001 ok ? then i back to to SE 2.1 to change old system.img & data.img by the new on FreeX10_alpha-release_0.0.2-UPDATE , ok ? then i reboot my phone into 2.2 , it run but like u make a refresh on computer ! evry 3 second !
thnx
Click to expand...
Click to collapse
Please read the main post!
sorry but no one answer me there
Thanks
Thanks for this ,hopefully a post like this is made for the 1st post on 2.1
http://forum.xda-developers.com/showpost.php?p=9134882&postcount=1
awesome thread, very helpful. Hopefully more people will read this rather than constantly posting the same bugs in the main thread.
Ahmed radi said:
sorry but no one answer me there
Click to expand...
Click to collapse
hey ahmed
grb el solution da
#0005 - Fixing radio, wifi and home screen flashing problem
Run this command
Code:
adb shell killall servicemanager
i think en da el 7l
bye
bsthost said:
hey ahmed
grb el solution da
#0005 - Fixing radio, wifi and home screen flashing problem
Run this command
Code:
adb shell killall servicemanager
i think en da el 7l
bye
Click to expand...
Click to collapse
i dont know how to use adb shell is there anythread for newbie user how to use adb ?
angry birds on my x10 is working well....i take it from a previous backup and restrored on 2.2 with mybackup pro
Please post to http://forum.xda-developers.com/showthread.php?t=835308&page=9999 thread instead.
We don't need to create two discussion thread.
i fixed the wifi and flashing problem and i have connected to wifi but i cant access internet or market any it seems i have connected to my modem netwok still cant access to internet any idea how to fix this?
17mayis said:
i fixed the wifi and flashing problem and i have connected to wifi but i cant access internet or market any it seems i have connected to my modem netwok still cant access to internet any idea how to fix this?
Click to expand...
Click to collapse
Code:
setprop ro.kernel.android.ndns 2
setprop net.eth0.dns1 8.8.8.8
setprop net.eth0.dns2 8.8.4.4
New crash this morning : i tried to connect my BT headphone after that i've activated BT => BT has desactivated itself then the phone reboots.
zephyrix said:
Code:
setprop ro.kernel.android.ndns 2
setprop net.eth0.dns1 8.8.8.8
setprop net.eth0.dns2 8.8.4.4
Click to expand...
Click to collapse
i appreciate your answer man if you could tell me how to do this ? through adb shell or something else?
17mayis said:
i dont know how to use adb shell is there anythread for newbie user how to use adb ?
Click to expand...
Click to collapse
Google is your friend!
i have flashPlayer10.1 problem it,s to slow when i play on any website any solution what might be ?

[HOWTO] Remove bash Color Codes

Anyone who uses the latest roms, mods, etc. is probably using bash. Bash is awesome, bash is great bash is...annoying if you use Windows with adb.
Familiar sight?
bash-4.1# ls
ls
←[1;36mbin←[0m ←[1;32minit.rc←[0m ←[1;34msbin←[0m
←[1;34mcache←[0m ←[1;32minit.smdkc110.rc←[0m ←[1;34msdcard←[0m
←[1;34mconfig←[0m ←[1;32minit.smdkc110.sh←[0m ←[1;34msqlite_stmt_journals←[0m
←[1;34mdata←[0m ←[1;36minit_samsung←[0m ←[1;34msys←[0m
←[1;34mdbdata←[0m ←[1;34mlib←[0m ←[1;34msystem←[0m
←[1;32mdefault.prop←[0m ←[1;32mlpm.rc←[0m ←[1;32msystem.prop←[0m
←[1;34mdev←[0m ←[1;34mmnt←[0m ←[1;34mtmp←[0m
←[1;34mefs←[0m ←[1;34mpreinstall←[0m ←[1;34muserdata←[0m
←[1;36metc←[0m ←[1;34mproc←[0m ←[1;36musr←[0m
←[1;32mfota.rc←[0m ←[1;32mrecovery.rc←[0m ←[1;34mvoodoo←[0m
←[1;36minit←[0m ←[1;34mres←[0m
Now my way:
bash-4.1# ls
ls
bin init.rc sbin
cache init.smdkc110.rc sdcard
config init.smdkc110.sh sqlite_stmt_journals
data init_samsung sys
dbdata lib system
default.prop lpm.rc system.prop
dev mnt tmp
efs preinstall userdata
etc proc usr
fota.rc recovery.rc voodoo
init res
Requirements:
Root.
Clockworkmod Recovery.
My busybox.
My color code removal patch.
Patch
http://dl.dropbox.com/u/2056318/bash_nocolor_1.1.zip
Install both via cwm. Make a nandroid backup first, JUST IN CASE.
If my patch hosed ls on your phone, this should fix it. Sorry about that.
http://dl.dropbox.com/u/2056318/bash_nocolor_fix.zip
Great Work!
What is this?
Did you remove all color from bash, or is it just not doing ls in color by default?
I would recommend people use something like mintty or console2 as their terminal on Windows instead of a regular cmd anyway, for anyone who actually uses the terminal frequently. Well, so console2 gets the same stupid behavior as the standard cmd with escape codes in adb for some reason, but it works with bash color escape codes in general (I have them in my $PS1). Mintty does support escape codes in adb shell, and is generally pretty nice, but doesn't have tabs unfortunately. Just a tip for people.
Nice job for those who don't want to change their terminal, of course. I just feel that for power users mintty is a better solution.
It removes them from ls, which is which is the only place the problem will lie for most windows users. I require my busybox, as there are many versions out there, but mine is the latest, and I know it supports ls. My patch removes the ls binary from Android and replaces it with my own symlink.
As for those options, I will stick with my powershell, but thanks. A poweruser should be using Linux anyway (I do normally).
Ah, yeah, that's probably true. But why is the default ls with colors in Android anyway? I normally need to create an alias to set ls to ls --color=auto or something along those lines usually. Is it just not getting the terminal info properly? I'm just curious about this I guess.
I'm a weird person who uses Unix shells on Windows, I guess because I like games too much.
Its not. ls in itself is a binary, not a symlink. It is running through the bash shell. Bash, is what supports colors. By default Android does not run bash, but sh.
Oh huh, didn't realize Android used sh by default. Guess I never paid attention.
Do you drop busybox in /system/bin to install it? That is, if you aren't flashing it from cwm.
Hate to be the bringer of bad news, but something in this breaks WiFi. After installing it, I can no longer connect to my router, it just stalls at "Obtaining address". When I check the router, it's already assigned an address.
I reflashed DL09 cleanly, and it connects right away. I re-apply this fix, and WiFi stops working again.
I did say make a nandroid backup....right?
Anyway, you are correct. Patch has been removed until I can figure something else out.
I did say make a nandroid backup....right?
Anyway, you are correct. Patch has been removed until I can figure something else out. Please revert to an earlier nandroid.
First post updated with a better fix that disables color for bash, system wide. Thanks to enderst from irc for the help.

[Q] Tutorial Send SMS from Android commandline (shell)

Hello guys!
Please, could you point me how to achieve the following functionality?
I would like to be able to send text messages (SMS) directly from android shell/commandline. The idea is that in Android from a terminal I will invoke e.g.:
Code:
sendsms +639xxxxxxxx "The body of the message"
and the sendsms app will send the message "The body of the message" to the specified number +639xxxxxxxx. I won't be using it directly, but I'd like to call it from scripts.
At stackoverflow under 4043490 thread two methods are mentioned:
a) use adb
Code:
adb shell am start -a android.intent.action.SENDTO -d sms:CCXXXXXXXXXX --es sms_body "SMS BODY GOES HERE" --ez exit_on_sent true
adb shell input keyevent 22
adb shell input keyevent 66
Where CCXXXXXXXXXX is country-code followed by phone number. This may not work correctly on non-standard android installations, you will need to find the correct keyevent values to pass.
b) use a service call
Code:
service call isms 5 s16 "17079876543" i32 0 i32 0 s16 "SMS TEXT HERE"
But none of them works for my rooted Alcatel OT 8008D with Android 4.2.1. If I run the adb command (a) from terminal with root rights, it complains "error: device not found".
The service call (b) ends with a message "Result: Parcel(00000000 '....')" but nothing happens, no SMS being sent. Similar behaviour has been reported at stackoverflow under thread 20680167.
Please, do you have any tips?
Thanks in advance!

[Q] Bash scripting on Ubuntu Phone

Hello, I just received my Aquaris E4.5 Ubuntu Edition, and would like to do some bash scripting. I am getting the error in the screenshot (/bin/sh bad interpreter permission denied).
When I execute the script with sh, bash or . before the command, it works properly.
Does anyone know whether /bin/sh has been blocked for a reason (security?) or that there may be a bug somewhere?
Welcome to the forums!
Indeed, this looks like a bug in the terminal app to me. If I run your script via adb or ssh, I can execute it just fine. But if I try to run it using the terminal app, I get exactly the same permission error.
I found some more information on Launchpad: https://bugs.launchpad.net/ubuntu-terminal-app/+bug/1325571

I will pay for this app:

I need an app that every Friday at 4PM will turn on (=Allday) the "Always On" display and turn off the "Wake on Wrist Raise". And on Saturday at 8PM will reverse the 2 settings.
crontab with correct shell commands should do. will probably need root and busybox.
(google crontab android)
or maybe without root according to this (lower half of the page)
How to use crontab in Android?
I can't find answer to my question: Is it possible to run crontab to reboot Android using busybox (or other means) Tried to run crontab, and it complain about unknown uid 0. Tried to run reboot, ...
stackoverflow.com
then google adb commands for things you need to do "always on display" etc..
test with adb to make sure your commands work .
then implement without adb shell in crontab, since it will be executed from within android not adb.
If you are talking about zeppos based watch then only first condition (AOD) is reachable.

Categories

Resources