Is targeting Kindle app on ipad possible with css media queries? - ipad

I am currently experiencing the nightmare that is called Kindle app for ipad. I am on ipad 1 Version 3.9.2
Kindle's support and documentation is abominable.
Here are my questions:
1)on the ipad 1, can you confirm that the app does NOT support KF8?
2)is there a media query which allows to target the kindle app for ipad and/or iphone. I had originally assumed that #media amzn-mobi would be sufficient. But I am finding that none of my media queries are working on the ipad app.
When I say "target", I mean that the media query will exclude the larger Kindle Fires and KF8 supporting androids and instead allow css exclusively for the ipad kindle app.
Can anyone help? Thanks.

The Kindle app on the iPad 1 is the same as the current Kindle app unless you have not allowed the app to update. The current Kindle for iOS app supports KF8. But you cannot just sideload a file. You need to use Kindle Previewer to create an AZK file. See the release notes for kindle previewer. Stuff has to go through iTunes and a sync. it's a pain, but the only way to make it go.
Media queries cannot target Kindle for iOS. You have 2 choices: KF8 or mobi. That's it. You cannot even target different kindle devices - for instance, you cannot target a Kindle Paperwhite from a Kindle Fire HDX - both support KF8, and that's the media query that will be used.

Related

How to avoid selling app to iPad 3 (or earlier)?

I want to enable selling of my iPad app only for iPad 4 and later because it does not run fluently on an iPad 3.
Since Apple gives us no direct way to choose which device I can sell my app, the only ways to achieve this is via indirect methods like minimum iOS version support or so called required device capabilities.
However, it seems that there is no way to make a distinction between iPad 3 and iPad 4.
iOS 9, for instance, is supporting iPad back to 2nd generation.

iOS app for specific devices

We are working on a kids app similar to Talking Ben app. It has lots of JPEG image sequences in it for interactive animations.
The thing is the animations are playing fine on iPad Air but they are playing slow or lagging on iPad 2. This is obviously due to the 512 MB RAM in iPad 2.
My question is can we mention in the app description something like - "Recommended devices iPad 3 or later" so that users dont download it on iPad 2 ?
Or can we straight away submit app for only iPad 3 or later devices ?
Whats the legal method for this ?
In short, I want to restrict my app to be downloaded in iPad 2.
Please help guys.
Thanks
Not too familiar with specifically what architecture is used on the iPad 2, but this post may help you with regards to making sure the app is only compatible with certain architectures: Restricting app installations from AppStore only to users with iPhone 5/5s/5c
You should set bluetooth-le as a requirement in your app Required device capabilities in your info.plist.
This should prohibit your app from being installed on iPad 2 as Bluetooth-LE (bluetooth 4.0) is available only since iPad 3rd generation (see here).

Can we restrict download or launch of an universal app in iPad 1 alone?

I have a universal app, it supports both iPad and iPhone. I do not want the app to be downloaded or launched in iPad 1 alone.
When the user downloads the app from App Store, is there a way to disable the download or launch of the app only for the first generation of iPad.
If not, can I add it in "What's new" option during the release of the app to App Store. Since it is a next version of release.
Please help.
Thanks in advance.
You could try to find a restriction with the UIRequiredDeviceCapabilities key in the info.plist. But this key only allows restrictions like armv7, magnetometer, etc. (full list available here). So you can't filter only iPads of the first generation.
Anyway, what you could do is checking at runtime whether it's an iPad 1 or not.
With this Library it's quite simple:
if([[UIDevice currentDevice] platformType] == UIDevice1GiPad){
//it's an iPad 1!
}
I don't believe you can restrict your software to a certain class of devices, but you can impose limits based on iOS version. The newest version of iOS supported by the original iPad is 5.1.1, which is quite dated now, so you might consider requiring iOS6+ on the App Store.
Also, you could require the device to have a camera, which the iPad 1 does not. But beware that Apple could reject your app if it does not actually use the camera.
Best possible way is to give the support for iOS 6+ which will exclude the ipad first generation.

Is it possible to support iPad HD only device while releasing app to Apple AppStore?

Update:
iPad HD : iPad Retina (high resolution) (2048x1536)
iPad : Medium resolution (1024x768)
iphone : Low Resolution (below 1024x768)
I'm a c++ developer and mostly develop our apps on cocos2d-x to support cross platform.
Since we are supporting all device resolutions, we need to ship all resource contents (iphone, ipad and ipadhd) in one universal binary for Apple AppStore. The accumulative size is 38MB for our app and its already in the Apple AppStore.
We have been thinking about spliting app to support for iPhone, iPad and iPadHD separately. But in "xcode > Target > Devices", I can see only three options iPhone, iPad and Universal.
What I'm aware of?
If I go to support iPhone and iPad individually, I need two different names like AppName and AppName for iPad.
We can not use the existing name and bundle id, and continue to support only one of the target devices if it is already a universal binary.
What I want to accomplish?
I want to have three different packages for same app with three different names(or bundle id's) like AppName, AppName for iPad and AppName HD for Apple AppStore.
Packing only resources required to support the individual target device (I can use python scripting to remove irrelevant resource assets).
Whenever there is any update, release for individual target devices.
What is the issue?
How to support iPad HD only? I don't want to bundle ipad(12MB) and ipadhd(17MB) resources in one binary. Is it possible to accomplish this task?
If the above problem has no solution and I choose target device as iPad, Do I need to support iPad and iPad HD both?
Thanks
Manish, one solution is to "simply" download the large images after the user purchases the app. It's common with games that that happens. First you download the app off the app store, and then it says "Loading dragon costumes!" or whatever and then it downloads a half gig of dragon costumes.
Whatever platform you are using , Unity3D or whatever, there is usually a trivial way to do this (since most games do it).
BTW two points, (a) 38mb is nothing for a game, so forget that. and (b) you are very smart to only target users with modern machines. Users with old machines are cheap, they don't pay for stuff. It's all but pointless supporting anything less than iOS7, for example, unless you are the biggest most world-famous games.

Universal iOS application

We have an iPhone app and want it to support iPad also.
But as I learned if you submit an app to Apple and indicate it is Universal, while in reality it is not (for example iPad is not supported at the time of submission, this is restricted by their policy).
So, what is the best way that we simultaneously allow further development of our application such that we also support iPad?
ps: we didn't want to create separate projects for iPad and iPhone since they share lot of code, but as I mentioned we encountered following obstacles.
Submit your app as an iPhone app. When you support iPad change it to a universal app when you submit your update.

Resources