Showing posts with label ICS. Show all posts
Showing posts with label ICS. Show all posts

Tuesday, December 04, 2012

Problems faced while compiling android application with old version to ICS/JB:

1)http://stackoverflow.com/questions/8446337/how-to-solve-error-this-attribute-must-be-localized-at-text-with-value-top

2) I got Android APK compilation Error: R.java:10: duplicate class

Solution:  I just removed the R.java file and compilation is going smooth
ICS features:

From ICS onwards, Android by default handles Keyboard/mouse input events... No need to do anything extra to make it work...



To know more about how to handle keyboard events/Simulate keyboard events:
 http://thecodeartist.blogspot.in/2011/03/simulating-keyevents-on-android-device.html

Friday, November 30, 2012

ICS, JB Phone window manager difference:

while playing video on fullscreen, status bar will be hided during playback in JB. This will not happen with ICS.
In ICS, Window manager will check for the mStatusBarCanHide flag to identify whether the system is having Phone UI or Tablet UI.
If it is having Phone UI, mStatusBarCanHide flag will be set to true. Whereas in case of tablet, this flag will be set to false.
Based on this flag, window manager differentiate the Phone UI or tablet UI.
   Display 600 dp is Phone UI.
   Display 720 dp
   Display > 720dp, tablet UI or larger screen UI

In ICS, status bar hiding support is available only phone models. It is not available for tablet UIs.[Refered from android ICS release notes]
In JB, it will checks for the mHasSystemNavBar. This value indicates whether device is having tablet UI/larger screens or smaller UI/phone UI.
This flag will be set to true for tablet UI.

      One more major difference between ICS  and JB is that while playing video on fullscreen, ICS will hide the status bar by calling status bar service's collapse() method whereas in JB, it will change the window manager layout.window manager layout's display frame/navigation frame/content frame will be set the video screen. Ideally status bar will be there in screen but it wont be shown to user due to display viewport.

Friday, August 17, 2012


Following steps  are needed for ICS Android application Development Setup :

1.Downloaded the JDK7 and installed it in machine
2.Downloaded installer_r20.0.3-windows.exe from google site
3.Run the "installer_r20.0.3-windows.exe"
4.Followed the below blog to download ICS SDK
http://www.android.pk/blog/tutorials/install-and-run-android-4-0-sdk-and-ice-cream-sandwich-on-pc/
Now ICS SDKs are installed.Create the AVD for for any platform which requires for application development
5.Downloaded ADT plugin from google site
6.Downloaded the Eclipse classic
7.Downloaded the android_sdk_for_windows.zip and set the tools/platform-tools  folder in PATH variable
8.Installed & Opened the Eclipse classic application
9.In Eclipse, Select    Install new software & select the localpath and add the ADT plugin zip file &
install the files
10.After the ADT plugin was installed, eclipse showed that it requires android support libraries...I installed that android support libraries too...


11.In eclipse->Preferences->Android->SDK location as "android_sdk_windows" folder path.
12.create new android application in eclipse
13.To run the application in emulator,
In Eclipse, Select Run->Run Configurations->Give Some string in "Name" box and select Launch default activity.
 In "Target" tab,select the AVD configuration to run the application





Friday, July 27, 2012

Changes/Features in android  Icecream sandwich:

1.RTSP streaming was integrated with NuPlayer
2.Valgrind  static memory leak tool is ported to android
3.gdb is ported to android
4.OpenCV image processing library is ported to android that is why facedetection / recognition is possible in
ICS . Samsung S III ICS is having face detection functionality
5.OpenAL application layer support  [refer system/media/wilhelm folder path]
6.Subtitle support through TimedTextPlayer for video/audio playback
7.ION memmory manager support in ICS
[ ION is a generalized memory manager that Google introduced in the Android 4.0 ICS (Ice Cream Sandwich) release to address the issue of fragmented memory management interfaces across different Android devices. There are at least three, probably more, PMEM-like interfaces. On Android devices using NVIDIA Tegra, there is "NVMAP"; on Android devices using TI OMAP, there is "CMEM"; and on Android devices using Qualcomm MSM, there is "PMEM" . All three SoC vendors are in the process of switching to ION].
More about ION memory can be found : http://lwn.net/Articles/480055/
8.Framework for DRM
9.NuPlayer is introduced for HTTP live streaming in Honeycomb tablet. In ICS,  RTSP stack/streaming is removed from stagefright and integrated into NuPlayer
10. There are two ways to integrate the decoders in gingerbread
        i) Software decoder path [google decoders are integrated by deriving from MediaSource.InstantiateSoftwareDecoder() function is used within OMXCodec.
        ii) OMX path
       
  From ICS onwards, Google decoders are integrated in OMX Path and InstantiateSoftwareDecoder() is removed in stagefright