Android's support for multiple screens

by Cheryl Sedota » Sun, 31 Jan 2010 04:59:43 GMT


Sponsored Links
 My team has developed a suite of applications for a specific device/
screen -> it's a medium density, large sized screen according to the
parameters defined here: 
 http://developer.android.com/guide/practices/screens_support.html #qualifiers

I would like to know if it's possible to leverage android 1.6's
multiple screen support infrastructure to get these applications to
automatically scale the drawable images down such that they display
properly (even if they are too small to interact with) on a medium
density, normal sized screen (like the G1).

As far as I can tell there is no way to get Android to do this
automatically for me, because both devices are considered "mdpi" and
drawables are typically divided up into alternate resource folders by
density.

I tried the following definition in my Android manifest but it did not
work:

<supports-screens anyDensity="false" largeScreens="true"
smallScreens="false" normalScreens="false" />

Please advise.

Thanks!!
Cheryl

--



Other Threads

1. Best way for debugging

Hi!

I have a background service which sometimes does not work properly. I
need a logfile which displays me information so that i am able to find
the error!

But when i use Log.d() then ddms shows me only a few hours of the
logfile. Is there a way to expand this? Or is there a more suitable
way for my problem?

Thanks
--~--~---------~--~----~------------~-------~--~----~

2. about rtsp play video

Hi,

I hope play a mp4 file through RTSP.
Hi
I used Darwin Streaming Server to stream this file.


I'm trying to receive RTSP streaming video with android newest code
(porting on my board , not simulator). I can play the file in local
with android's mediaplayer.

I changed 'path' (development\samples\ApiDemos\src\com\example\android
\apis\MediaPlayerDemo_Video.java)
to the address like rtsp://10.120.9.99/sample_h264_100kbit.mp4
but failed, log show prepare failed.

from the catched ip packet, I found that the android had already send
DESCRIBE command to server, and server send 200 ok back to android.
but android did not send any packet, then error occur.

And I only change one place in android source code ,  in
android_surface_output.cpp I set mEmulation as true,
else I even play local video, system prompt did not found this file /
dev/pmem_adsp.

Could someone help me figure out the rootcause?

Thanksin Advance!!!

tony


here is the error log,

E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=436:PVSCHED:Scheduler
'AndroidPVWrapper', Thread 0xd0d8: Error! AO JitterBufferNode Error
101 not handled
E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=437:PVSCHED:Scheduler
'AndroidPVWrapper', Thread 0xd0d8: Error! Reason 101
E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=437:PVSCHED:Scheduler
'AndroidPVWrapper', Thread 0xd0d8: Exited PV Scheduling Loop


more log

E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=431:PVMFStreamingManagerNode::NodeCommandCompleted
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=431:PVMFStreamingManagerNode:NodeCommandCompleted: 1009
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=431:PVMFSocketNodeCommand::ProcessCommand() in
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFSocketNode::DoRequestPort() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFSocketNode::ParseTransportConfig() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFSocketNode::ParseTransportConfig() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFSocketNode::DoRequestPort tag 2 config UDP/
remote_address=0.0.0.0;client_port=14635;mime=video/H264/rtp
E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=432:PVMFSocketNode::AddPort
() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFSocketNode::AllocatePortMemPool() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFSocketNode:CommandComplete Id 6004 Cmd 2 Status
1 Context 90976 Data 179096
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFStreamingManagerNode::NodeCommandCompleted
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFStreamingManagerNode:NodeCommandCompleted: 1009
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=432:PVMFSocketNodeCommand::ProcessCommand() in
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFSocketNode::DoRequestPort() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFSocketNode::ParseTransportConfig() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFSocketNode::ParseTransportConfig() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFSocketNode::DoRequestPort tag 2 config UDP/
remote_address=0.0.0.0;client_port=14637;mime=audio/mpeg4-generic/rtp
E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=433:PVMFSocketNode::AddPort
() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFSocketNode::AllocatePortMemPool() In
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFSocketNode:CommandComplete Id 6005 Cmd 2 Status
1 Context 91000 Data 190240
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFStreamingManagerNode::NodeCommandCompleted
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=433:PVMFStreamingManagerNode:NodeCommandCompleted: 1009
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=434:PVMFJitterBufferNode::DoRequestPort
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=435:JitterBufferNode:CommandComplete Id 10002 Cmd 2
Status 1 Context 91024 Data 191056
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=436:PVMFStreamingManagerNode::NodeCommandCompleted
E/PV      ( 1698): PVLOG:TID
(0xd0d8):Time=436:PVMFStreamingManagerNode:NodeCommandCompleted: 3009
E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=436:PVSCHED:Scheduler
'AndroidPVWrapper', Thread 0xd0d8: Error! AO JitterBufferNode Error
101 not handled
E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=437:PVSCHED:Scheduler
'AndroidPVWrapper', Thread 0xd0d8: Error! Reason 101
E/PV      ( 1698): PVLOG:TID(0xd0d8):Time=437:PVSCHED:Scheduler
'AndroidPVWrapper', Thread 0xd0d8: Exited PV Scheduling Loop
W/MediaPlayer( 1687): MediaPlayer server died!
W/MediaPlayer( 1687): IMediaplayer died
V/MediaPlayer( 1687): message received msg=100, ext1=100, ext2=0
V/MediaPlayer( 1687): error (100, 0)
V/MediaPlayer( 1687): signal application thread
V/MediaPlayer( 1687): prepare complete - status=100
I/ServiceManager( 1548): service 'media.audio_flinger' died
I/ServiceManager( 1548): service 'media.player' died
I/ServiceManager( 1548): service 'media.camera' died
W/AudioSystem( 1569): AudioFlinger server died!
E/MediaPlayerDemo( 1687): error: Prepare failed.: status=0x64
E/MediaPlayerDemo( 1687): java.io.IOException: Prepare failed.:
status=0x64
E/MediaPlayerDemo( 1687):       at android.media.MediaPlayer.prepare
(Native Method)
E/MediaPlayerDemo( 1687):       at
com.example.android.apis.media.MediaPlayerDemo_Video.playVideo
(MediaPlayerDemo_Video.java:109)
E/MediaPlayerDemo( 1687):       at
com.example.android.apis.media.MediaPlayerDemo_Video.surfaceCreated
(MediaPlayerDemo_Video.java:154)
E/MediaPlayerDemo( 1687):       at
android.view.SurfaceView.updateWindow(SurfaceView.java:347)
E/MediaPlayerDemo( 1687):       at
android.view.SurfaceView.dispatchDraw(SurfaceView.java:255)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.drawChild
(ViewGroup.java:1434)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.dispatchDraw
(ViewGroup.java:1208)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.drawChild
(ViewGroup.java:1434)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.dispatchDraw
(ViewGroup.java:1208)
E/MediaPlayerDemo( 1687):       at android.view.View.draw(View.java:
5355)
E/MediaPlayerDemo( 1687):       at android.widget.FrameLayout.draw
(FrameLayout.java:324)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.drawChild
(ViewGroup.java:1436)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.dispatchDraw
(ViewGroup.java:1208)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.drawChild
(ViewGroup.java:1434)
E/MediaPlayerDemo( 1687):       at android.view.ViewGroup.dispatchDraw
(ViewGroup.java:1208)
E/MediaPlayerDemo( 1687):       at android.view.View.draw(View.java:
5355)
E/MediaPlayerDemo( 1687):       at android.widget.FrameLayout.draw
(FrameLayout.java:324)
E/MediaPlayerDemo( 1687):       at
com.android.internal.policy.impl.PhoneWindow$DecorView.draw
(PhoneWindow.java:1701)
E/MediaPlayerDemo( 1687):       at android.view.ViewRoot.draw
(ViewRoot.java:980)
E/MediaPlayerDemo( 1687):       at
android.view.ViewRoot.performTraversals(ViewRoot.java:829)
E/MediaPlayerDemo( 1687):       at android.view.ViewRoot.handleMessage
(ViewRoot.java:1103)
E/MediaPlayerDemo( 1687):       at android.os.Handler.dispatchMessage
(Handler.java:88)
E/MediaPlayerDemo( 1687):       at android.os.Looper.loop(Looper.java:
123)
E/MediaPlayerDemo( 1687):       at android.app.ActivityThread.main
(ActivityThread.java:3742)
E/MediaPlayerDemo( 1687):       at
java.lang.reflect.Method.invokeNative(Native Method)
E/MediaPlayerDemo( 1687):       at java.lang.reflect.Method.invoke
(Method.java:515)
E/MediaPlayerDemo( 1687):       at com.android.internal.os.ZygoteInit
$MethodAndArgsCaller.run(ZygoteInit.java:739)
E/MediaPlayerDemo( 1687):       at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:497)
E/MediaPlayerDemo( 1687):       at dalvik.system.NativeStart.main
(Native Method)
I/DEBUG   ( 1551): de{*filter*}d committing suicide to free the zombie!
D/MediaPlayerDemo( 1687): surfaceChanged called
I/DEBUG   ( 1705): de{*filter*}d: Mar 12 2009 00:11:29
I/ActivityManager( 1569): Displayed activity
com.example.android.apis/.media.MediaPlayerDemo_Video: 788 ms
I/        ( 1707): ServiceManager: 0xaab8
W/AudioHardwareInterface( 1707): Using stubbed audio hardware. No
sound will be produced.
I/AudioFlinger( 1707): AudioFlinger's main thread ready to run.
V/MediaPlayerService( 1707): MediaPlayerService created
I/CameraService( 1707): CameraService started: pid=1707
E/AudioService( 1569): Media server died.
E/AudioService( 1569): Media server started.


--~--~---------~--~----~------------~-------~--~----~

3. Forcing garbage collection to happen at convenient time

4. About make installer_img command error for x86

5. is an AppWidget Configuration Activity required?

6. Tearing issue with OpenGL

7. How does Market calculate popularity?