Emulator and device

ciginfo

Well-Known Member
Licensed User
Longtime User
Bonjour,
My appli works fine on the emulator (Android 2.2, Api level 8).
When i try it on my device Galaxy S2, The labels built with code have a small height and only if built with code and no with the designer. Also some scrollviews don't scroll.
It seems my emulator doesn't agree with the Galawy S2.
1°)What emulator can i choose to agree with the Galaxy S2 ?
2°) When we make an application it doesn't works on all th android devices? we have to make different application for every android device?

Thank you
 

ciginfo

Well-Known Member
Licensed User
Longtime User
OK, I set the Designer 480X 800, 240dpi and i create also an emulator 480 X 800, 240dpi. It seems to agree with Galaxy S2. But does my app created with these settings will work on others devices anterior Galaxy S2 ?
 
Upvote 0

ciginfo

Well-Known Member
Licensed User
Longtime User
My problem is i am french and i don't understand everything with my bad English. I have not found anything in french about B4A.
After reading Wiki and beginner'guide it seems that with designer settings on 480, 800, 240dpi and an emulator created with the same settins ( 480,800, 240), it is correct. Is n't it ?
 
Upvote 0

klaus

Expert
Licensed User
Longtime User
Alors je vais donner quelques explications en français.
La résolution écran par défaut est 320*480 pixles avec une densité de 160 pixels par pouce.
Certains appareils ont une résolution de 480*800 pixels avec une densité de 240 pixels par pouce avec des dimensions physiques semblables.
Pour corser le tout les rapports largeur / hauteur ne sont pas les mêmes pour tous les appareils.

La résolution 320 / 480 rapportée à une densité de 240 aurait une résolution de 320*1.5 = 480 et 480*1.5 = 720.
On constate donc que la résolution 480*800 a 80 pilxels supplémentaires en hauteur par rapport à l'autre.
On peut, par exemple, créer un layout avec un émulateur avec la résolution par défaut 320*480/160. Ce layout fonctionne parfaitement sur un appareil avec une résolution de 480*800/240, le système d'exploitation adapte les dimensions automatiquement, mais avec 80 pixels non occupés au bas de l'écran. Ce supplément de hauteur peut être exploité, mais il faut le faire dans le code. Par exemple la hauteur d'un ScrollView peut être adaptée aux différences de hauteur des écrans. Ceci est démontré en détail dans le chapitre 5 du Beginner's Guide.

Si tu dimensionnes des objets dans le code tu dois donner les dimensions soit en %x ou %y ou en dip.
dip = density independant pixel (pixel indépendant de la densité.

Exemples:
Panel1.Width = 100%x toute la largeur
Panel1.Height = 50%y toute la hauteur
Button1.Width = 100dip 100 density independant pixels
Button1.Height = 50dip 50 density independant pixels

Ce qui veut dire que le même Button1 aura des dimensions physiques identiques mais différentes en pixels à cause de la différence de densité:
densité 160
largeur 100 pixels
hauteur 50 pixels

densité 240
largeur 150 pixels
hauteur 75 pixels

Pour les écran plus grands des tabletees il est judicieux d'établir un layout spécifique car leur dimensions physiques sont plus grandes, la densité étant dans la plupart des cas 160.

J'epère que ces explications sont assez claires.

Meilleures salutations.
 
Upvote 0

ciginfo

Well-Known Member
Licensed User
Longtime User
Oh merci beaucoup. C'est effectivement parfaitement clair et c'est extremenent agreable d'avoir cette explication en français. Encore merci.
Pour la bonne marche du forum je pense qu'il vaudra mieux que je continue à m'exprimer avec mon mauvais anglais qu'en français, même si je vois que certains sont francophones.
Merci beaucoup.
 
Upvote 0

klaus

Expert
Licensed User
Longtime User
Tu as deux possibilités:
- en anglais, avec plus de chances d'avoir une réponse (en anglais)
- sur le forum en français, il est valable autant pour B4A que pour B4PPC

Je réponds aussi sur le forum en français, s'il n'y a pas de réponse c'est que je n'en ai pas ou que suis absent.

Dans le futur, si j'ai des réponses, je te les donnerais en français, même sur le forum en anglais.

Meilleures salutations.
 
Upvote 0

hdtvirl

Active Member
Licensed User
Longtime User
10.1 Tablet Device Emulator. API Level 12 Problem.

Hello, My Problem is as follows, I have been trying to run the designer on the emulator for an android 3.1 API Level 12, when I attempt to connect with the designer it attempts to make the connection for a few seconds and then stops I get a message about restarting the ADB server which I do but it still does not work.

I am working on a panel with 33 buttons on it and I used a device emulator for the Samsung SII (2.2 Level 8), the desiger works correctly and I can move the buttons around and make any other changes required. When I download the App to the emulator the buttons are not all shown and some of the buttons positions have changed and the event assigned to the buttons (Control Array) does not work for all the buttons shown. I have also put the application on a Real Device and I have the same problem.

I would appreciate any pointers as to what I might be doing wrong !.

Regards

BOB
 
Upvote 0

Erel

B4X founder
Staff member
Licensed User
Longtime User
Hello, My Problem is as follows, I have been trying to run the designer on the emulator for an android 3.1 API Level 12, when I attempt to connect with the designer it attempts to make the connection for a few seconds and then stops I get a message about restarting the ADB server which I do but it still does not work.
Does it show any other error message?

I am working on a panel with 33 buttons on it and I used a device emulator for the Samsung SII (2.2 Level 8), the desiger works correctly and I can move the buttons around and make any other changes required. When I download the App to the emulator the buttons are not all shown and some of the buttons positions have changed and the event assigned to the buttons (Control Array) does not work for all the buttons shown. I have also put the application on a Real Device and I have the same problem.
Make sure that you are not initializing the views later in your code. If you can upload your project we will be able to better help you.
 
Upvote 0

hdtvirl

Active Member
Licensed User
Longtime User
Erel, You are goooooood !!!!!

Erel, Problem Sorted,

"Make sure that you are not initializing the views later in your code."

This was my problem, and it is now working perfectlyon the Emulator both in design and deployment modes.

Thanks for your prompt response.

BOB
 
Upvote 0
Top