Mobile Notes

Removing unneeded apps

Backup apks

You should back up any apks that you plan to remove. That way, you can easily re-install them if you change your mind. You have two main options:
Nandroid backup from the recovery console, or
Manual backup with adb pull /system/app/ ~/Desktop/app/
How to find applications

To find what apps are installed on the device, you will need to run the following, either in adb shell, or the device's term:
ls /system/app or ls /data/app

You can also list installed packages using the package manager, either in Terminal Emulator or via adb shell:
pm list packages

At a lower level, you can pull the packages.xml and the packages.list files using adb and examine them directly to determine what is installed and what the related .apk file is called and where it is stored. packages.xml will show you the package name and the .apk file installation path and name. In packages.list you can look up the package name and locate the data path. Both of these files will tell you a great deal more, these are the things that pertain to the present article.
adb pull /data/system/packages.xml
adb pull /data/system/packages.list

Generally, any apps you install from the market or otherwise manually install will be in /data/app, while any apps that come pre-installed will be in /system/app.
How to remove applications

Remember to watch the case of all files, directories, apk names, and package names!
Case matters. Example.apk and example.apk are two different things.

ADB /system apps /data apps
adb remount
adb shell rm -f /system/app/<apk name>.apk
adb uninstall <package name> adb uninstall <package name>

Term (on device) /system apps /data apps
su
mount -o rw,remount /system
rm -f /system/app/<apk name>.apk
pm uninstall <package name> su
mount -o rw,remount /data
rm -f /data/app/<apk name>.apk
pm uninstall <package name>


Android emulators

google's android studio with emulator - full IDE and KVM based FAST virtualization
http://developer.android.com/tools/devices/emulator.html

genymotion - for linux, uses vbox, fairly lightweight (<1G), many features disabled in a free version - had luck running android 4.2.2 inside whonix vm (vbox inside vbox) on fake nexus 7
supports apk drag-n-drop into vm
on whonix needs virtualbox, gstreamer0.10-gapt, gstreamer0.10-plugins-base and plugins-good

andy, droid4x - vbox based somewhat very heavy weight and cumbersome

bluestack, nox - no linux option

How Assisted GPS a-gps works

aGPS phones do not have complete GPS information and cannot compute their location on their own. They would need the ability to make a request to a tower(s) and an aGPS server on the network, have the aGPS server compute the location of the phone, and have the aGS server inform the phone of the phone's location.

aGPS phones only receive the timing (distance) information from the satellites, not the ephemeris (satellite location) information from the satellite that tells where the satellite is. The phone sends the timing information to the tower which forwards it to an aGPS server, along with triangulation information from one or more towers.

The aGPS server has the satellite ephemeris (satellite location) information and uses it along with the timing information and triangulation information to calculate the postition of the phone. The aGPS server then sends the location information to the station that requested the location information. Currently 911 emergency centers are the only stations able to make the requests.

Android Video Streaming And Sharing

In server mode. all can consume a stream

xine - getting obsolete. streaming theoretically possible.

mplayer - no streaming , ported to android
vlc - android port in progress, likely only for gingerbread 2.3.4. proven streaming over network in rtp, udp, http etc. http://git.videolan.org/?p=vlc/vlc-android.git;a=summary
binary for droid - http://www.reddit.com/r/Android/comments/h788c/vlc_for_androidwell_almost_how_to_compile_your/c1t73pv
http://wiki.videolan.org/AndroidCompile
and transcoding
http://wiki.videolan.org/Documentation:Streaming_HowTo/Advanced_Streaming_Using_the_Command_Line
http://www.videolan.org/doc/streaming-howto/en/

ffserve, which is part of LibAV, also known as ffmpeg. ffmpeg is not yet on android but work in progress. ffserver can stream RTP/RTSP/HTTP.
compiling for android -http://rxwen.blogspot.com/2010/05/use-ffmpeg-to-setup-streaming-server-on.html

rockplayer - on android, based on libav, can it stream? rockplayer.com

mythtv streaming to android - http://www.mythtv.org/wiki/Android_RSS_Video_Feed

playon - android app capable of playing all kinds of streamed video


ubuntu for arm
https://wiki.ubuntu.com/ARM/NattyReleaseNotes
https://wiki.ubuntu.com/ARM/OmapNetbook


ARM hardware
Omap3
http://en.wikipedia.org/wiki/Texas_Instruments_OMAP

UPnP - DLNA servers

Servers

  • ArkMC Media Server and Player - controllable from the remote (try)

Players

UPnP sync

Will the streaming to the multiple devices all be in sync without lag in each room?

A: In most cases no. The DLNA standard does not specify how to achieve synchronized playback; however, device manufacturers may support synchronized audio by whatever proprietary means they choose. A great example of this is Sonos products today. A user may choose which rooms to sync via the Sonos controller, and then use Windows 7 Play To for sending a playlist. The audio will be synchronized as the user expected. Because the method by which devices are synchronized is proprietary, we don’t expect different manufacturers to interoperate for synchronized playback unless they use the same underlying middleware implementation. A number of manufacturers already support, or are actively working on support for synchronized audio in new products.

Each manufacturer has the option of providing software on Windows that provides the user with the ability to specify which of their devices should be synchronized, as well as per-room controls (such as volume and mute). All of this would have to be exposed somewhere other than the Play To controller, which is not extensible in Windows 7. Great new device experiences are enabled in Windows 7, such as the Devices and Printers folder and Device Stage, and we are looking forward to seeing how manufacturers take advantage of those platforms to provide a great synchronized audio setup and control experience. We would expect the Play To controller, in such a scenario, to provide global playback controls for the synchronized devices.



@iPhone @TechnicalNotes