Kindle Fire, a couple of Qs...

eps

Expert
Licensed User
Longtime User
Mainly regarding the screen resolution.. They say "
To be compatible with Kindle Fire, apps must be optimized to run on a 7” screen with width: 600px and height: 1024px (Abstracted LCD Density: 160). Please note that the device will reserve 20px of the height to display a soft key menu, yielding a height of 1004px when in fullscreen mode.
"

I've created a couple of layouts in AVD and my App, but created them as a resolution without the 20px menu, should I have created them with the 20px menu space included and then rattled back from that?

I don't suppose anyone has access to a Kindle Fire do they? They're not out in the UK yet (or can they be purchased abroad and will work in the UK?). Whilst testing using AVD is good, the screen resolutions seem work better being tested on physical devices.

mtia!!
 

Gravy Jones

Member
Licensed User
Longtime User
So new to this it hurts

:sign0104:

I've read these posts and I just installed all the software and am ready to make my AVD. I see that someone else has issues about the Kindle and how to configure the AVD.

I've never done a lick of coding on Android so all of this is new to me. Can someone spell out for me the settings of the AVD? I understand from my research that the DPI s/b 160 but this thread seems to go counter to that research.

Someone help a n00b who is trying to break free from coding on Windows!
 
Upvote 0

Jack Cole

Well-Known Member
Licensed User
Longtime User
This actually explains a few things that have been puzzling me. I have one app that has been doing very well on the Kindle, but has a very low click through rate on ads. I'm guessing that it got approved because my ads were essentially covered up by the soft key menu. I actually have a few apps approved for the fire, which have the same problem. I've probably had 100,000 ad impressions covered by the soft menu!

I don't have a fire, so makes testing kind of hard. My question is how to recognize that you are running on a Kindle fire vs another device. And I don't want to do it in a way that requires permissions to be changed.

I thought about just determining that from the screen dimensions.

For example:

B4X:
if 100%y=1024 then 'portrait mode
    height=964
end if

Then just using the height variable as a reference throughout. Am I missing anything here?
 
Upvote 0

dagnabitboy

Active Member
Licensed User
Longtime User
I briefly used a friends Fire and I used the following to detect it:
B4X:
Sub Globals
   Dim p1 As Phone
End Sub
Sub Activity_Create(FirstTime as Boolean)
   log(" Manufacturer: " & p1.Manufacturer)
   log(" Model:        " & p1.Model)
   log(" Product:      " & p1.Product)
End Sub
I didn't record the exact results though, sorry! Perhaps someone on here that has a Fire can run that code and let you know. If I can borrow my friends unit again I'll run it and let you know! The manufacturer output was "Amazon", and the model was either "Kindle Fire", or just "Fire". Hope that helps.
 
Upvote 0

Jack Cole

Well-Known Member
Licensed User
Longtime User
When I set up an emulator with 600x1024 and log(100%y), I get 974. So, I assume this means 50 pix are taken up by the notification bar and title bar of the application.

My question is:

Will 100%y-20 do the trick for an app not running in full screen mode?
 
Upvote 0

margret

Well-Known Member
Licensed User
Longtime User
Kindle Fire Info

Hello All,

I am working on a tutorial that I think will be very helpful for using B4A on the kindle fire. I have found that the softmenu will always display and have currently found no way to minimize it. It is 70 pixs high and the status bar is another 40 pixs. So 110 pixs need to be removed from the height of your active view both in landscape and portrait mode. There are many other issues as well which will be covered in the tutorial. Please see this screen shot for some info.

http://www.b4x.com/forum/attachments/basic4android-updates-questions/10136d1327429974-what-am-i-doing-wrong-kindle-fire-layout-kindlebrow.jpg

Thanks,

Margret
 
Last edited:
Upvote 0

Kevin

Well-Known Member
Licensed User
Longtime User
Looking forward to your tutorial. Someone mentioned in another thread, but I never got a definite confirmation: if you do activity.height on a Fire, does it really report a height that is more than what is truly available because it doesn't account for its own soft keys?

Or can activity.height be used to correctly return the true available height? When creating a variant I can see where we would need to account for the soft keys, but if we are tweaking the views in code and use activity.height, will that work on a Fire?
 
Upvote 0

margret

Well-Known Member
Licensed User
Longtime User
Activity.height

Looking forward to your tutorial. Someone mentioned in another thread, but I never got a definite confirmation: if you do activity.height on a Fire, does it really report a height that is more than what is truly available because it doesn't account for its own soft keys?

Or can activity.height be used to correctly return the true available height? When creating a variant I can see where we would need to account for the soft keys, but if we are tweaking the views in code and use activity.height, will that work on a Fire?

Hello, The fire does report the activity.height wrong when the app first loads. It shows 1024 & 600. When you rotate, it will then report 1004 & 580, so I don't think I would try to rely on this. I am still doing a lot of testing to find all the issues.

Margret
 
Upvote 0

Jack Cole

Well-Known Member
Licensed User
Longtime User
One Solution

I have one app that's fairly popular on the Kindle Fire (Minesweeper Classic+), but I figured out the ad at the bottom was being covered up by the soft key menu.

Here is what I've done to solve the problem. It's not exactly ideal, but I think effective.

I moved the ad to the top of the screen. The views in the tabber contain scrollviews. I give the scrollviews an extra 180dip of height so that the user can be certain to be able to scroll to see all the content.

Should be a good enough fix until we can get the details on how to best deal with this problem.
 
Upvote 0
Top