Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Get Screen dimensions from Service

Tags:

android

screen

I got the Screen Size by using the following from a activity,

Display display = getWindowManager().getDefaultDisplay(); 

But the same thing is not working from a service (for obvious reasons, i know!) but i desperately need to get the display size from a service. Can some1 please explain me any other way for getting the ScreenSize??

So i guess as far as i see, there is no way we can get the Screen size from the service. Wat i have done as of now is to start the activity atleast 1ce by default and store the actual screen size in pixels in the shared preferences. I use the shared preferences to get the value when the service starts.

Is this the only way it'll work out??? Cant we by any means get the screen size from the service??

like image 689
JaVadid Avatar asked Jul 09 '10 07:07

JaVadid


People also ask

How do I find screen size on android?

1. Display display = getWindowManager(). getDefaultDisplay(); Point size = new Point(); display. getSize(size); int width = size.


2 Answers

there totally is a way to obtain it from a service:

    WindowManager window = (WindowManager) getSystemService(Context.WINDOW_SERVICE);      Display display = window.getDefaultDisplay();     int width = display.getWidth();     int height = display.getHeight(); 
like image 174
RJ M Avatar answered Sep 22 '22 22:09

RJ M


It worked for me!

DisplayMetrics metrics = getApplicationContext().getResources().getDisplayMetrics(); int width = metrics.widthPixels; int height = metrics.heightPixels; 

You only needed to get the context.

like image 20
Mane Avatar answered Sep 19 '22 22:09

Mane