how does the performance speed differ between Flash App(compiled by Air) on iPad2 and Flash runs on iPad2 Flash browser? - ipad

I'm planning of developing iPad Game but currently I don't own Mac or the apple dev license yet and I'd like to do some performance examination before even bother to buy them.
My iPad2 has a Web Browser App called puffin which can run Flash on the internet. And I was wondering if you made Flash iPad App using Adobe Air, will it run as fast as the Web Flash version that runs on puffin?

I imagine Flash through puffin would perform less well than one made with Adobe Air.
Puffin is able to achieve Flash on iOS by running the Flash code remotely on their servers, and then sending the results back to the device. This involves a lot of travelling time over the air, and could potentially cause quite a bit of latency.
Adobe Air is native code running on the device; this is basically the best you'll get for running Flash code locally. Both are natively supported by Adobe, meaning it's the best support you'll get as well.
Using Adobe Air means you can reach a wider audience, your game can be on the App Store for all to see. If you only made it available via puffin, you're restricting your audience to owners of the puffin app (I've never heard of puffin before, I imagine a lot don't), and people who know the URL for your game. A lot of apps on the app store already are made with Adobe Air, and they have no performance problems.

Related

iOS/iPadOS - How can we access /dev/tty.iap (for in-house apps)?

I wrote an iPad app to control a proprietary "robot" (based on a 3d-printer). With respect to providing a GUI to the robot, the iPad (mini) is ideal in a way, since it avoids additional I/O devices like e.g. a mouse or a keyboard and obviously comes with a display.
The app currently interfaces with the robot via WiFi (utilising WebSockets). While this basically works, every once in a while, latency seems to be an issue. At the same time, the WiFi interface to the robot seems to be a bit of overkill, since the iPad is physically mounted to the frame of the robot with a physical distance to its motherboard of less than 3 feet. - Also, the robot can be beautifully controlled from a serial terminal over UART (e.g. from macOS). - Therefore, I would like replace the WiFi/WebSocket communication with a simple serial interface.
Unfortunately, though, "/dev/tty.iap" does not seem to be accessible on iOS/iPadOS unless you enroll in Apple's MFI program, which - in this case - also appears as overkill, since our app will only ever be used internally. redpark.com makes (expensive MFI certified serial) cables and a library, which I consider a last resort ...
Jailbreaking the iPad might also be way to go. - However, I have no experience with this and would really like to avoid bricking the iPad. On the other hand, I have no basic objections against jailbreaking my device, which is exclusively used to control the robot.
Can anyone recommend a safe (e.g. jailbreak) route towards accessing "/dev/tty.iap" for in-house apps ? Would "/dev/tty.iap" be immediately accessible on a jailbroken iPad ? - Would the iPad have to be jailbroken again, everytime it is re-booted ? What would be a suitable Jailbreak tool for my purposes (candidates are iPad mini 5 with iPadOS 15.1 or iPad mini 2 with iOS 12.5.5) ? Are there any alternative routes towards accessing "/dev/tty.iap" for in-house apps (avoiding jailbreaking or MFI) ?
Thanks!
EDIT1 one more thought: There are numerous unpublished APIs providing access to normally "hidden" iOS-features. - While employing such APIs would disqualify any app for the AppStore, in "my" case, publishing the app is not even considered. Hence, if somebody is aware of unpublished functions that provide the desired access to "/dev/tty.iap", respective hints would also be appreciated very much.

Is necessary purchase some physical devices (smartphone/tablets) for develop/test a mobile website?

I'm currently developing a mobile website with jquery mobile, not exactly responsive web design. I know I can develop the project in the browser on my desktop PC with some plugins or use some online services or simulators available. But I'm not sure if I missing something really important for test.
Example:
touch/swype events or viewport rotation.
Is necessary purchase some physical devices (smartphone/tablets) to develop/test the project? Why?
Intro
First don't let anyone tell you it is not necessary to purchase a real devices for a test purpose. I will tell you why from an Android perspective, same thing, just in a much smaller manner also goes for iOS development.
Good sides of an emulator testing
It is free, you only need a computer which will run your emulator.
You can test your applications in different cases (different screen resolutions, different OS versions)
Faster I/O and network operations but this is not so much a good point if you calculate how much everything else is slow.
Bad sides
It is slooooooooow, if you never tried to use it you can comprehend how slow it is (iOS emulator is fast like hell in a comparison). It doesn't matter if you have a top of a line hardware PC or Mac it is just that slow.
Emulator is simply to darn buggy, there will be a lot of times when application will work just fine on a read device and it will brake on an emulator.
This also goes other way around, sometimes application will work just fine on an emulator but will brake on a real device, in some case it will not work at all or it will not work on some devices. This is usually a case when working with hybrid applications. for some reason Android web view acts differently on real devices and on an emulator.
Emulator simply don't have some functionalities to interact with a hardware nor it can successfully emulate it. Hardware connection it can emulate even don't work correctly sometimes.
I have talked about how slow it is (because of a converting ARM bytecodes to x86 ones on the fly) but from a graphics standpoint it tends to be even slower so don't expect to do any game development on it.
Real devices comes with much more preinstalled software which may slower your application or in some ways enhance its functionalities.
Real world GPS testing is out of a question
Final notes
If you are intending to work with iOS only emulator can be used to do much of a development. Sheer lack of different screens sizes and hardware diversity makes it a perfect platform for a test purposes. Android on the other hand is completely different story, its emulator is simply useless for test purposes. I have several real Android devices, ranging from Android 2.1 + , different screen sizes and finally hardware architecture. You don't need to believe me but everything I mentioned play a significant role while testing Android applications.
If your main concern is testing your jQuery Mobile application I would still advise you a use of a real device in case of Android while in case of iOS you can successfully use emulator. Android is problematic because transition effects are to darn slow and that includes everything else that requires animations. Swipe will not be a problem and I can vouch it works just fine. Second real problem is a device rotation. jQuery Mobile sometimes can have a problem with it, mostly when used with non responsive 3rd party jQuery plugins (carousels, sliders ....). Third problem is mentioned in my list of bad sides, basically web view used in a emulator acts different then one in a real phone so sometimes you will see one thing in your real device and one thing in your emulator.
It is not necessary to purchase such a device.
For Android there is an emulator provided by the Android Development Kit (ADK). You can use it to configure multiple emulated devices with defferent screen sizes, etc. to test for multiple resolutions and Android (browser) versions.
[edit] Though to really test it for iphones you would need that emulator too I suppose, to make sure the website is correctly displayed in the provided browser.
[edit 2] To test "real" smartphone apps (not webapps), it is better to have a real device at hand.
This very much depends to which level you want to test it before you are happy to hand it over for the usage. After you do that and someone reports a defect, will you be able to see where is the problem (if it works on your PC)?
The development itself can be done in your browser, you can even simluate swipe events by dragging mouse. You don't even need any simulators, you can just make chrome window smaller (most of the devices are using some version of webkit, same as chrome).
However, once it comes to testing, I wouldn't feel great if I didn't know how it looks on the device itself. So I think having at least one device (ideally two with different OS and resolution) is always beneficial.
I would also be unsatisfied if I was working on something of which I could not see the result :)

Capturing Video on Mobile device using Adobe AIR

I am tasked with creating a video recording app for mobile devices (iPhone, iPad, Android) where the users are asked to record a short clip using their phones/tablets.
The video is then uploded to a server (either within the same app or a secondary app/site or via email)
Is it possible for an AIR app to record and save quality video and audio to the camera roll/gallery, or alternatively open the built-in video recorder app from the AIR app?
I am stuck between attempting this using Flash CS5.5 and deploy to iOS and Android using one code base, or building native apps and possibly duplicating my workload.
If I attempt the AIR route, will I hit problems with quality/resolution/usability etc? Or should I stick to building a native app? Time is of the essence too :)
I've done lots of research and not really found anything to swing my decision.
Thank in advance.
P

phoneGap app for iOs: if application works in xCode device emulator

I've got a newbie question about phoneGap and creating apps for iOs.
If my phoneGap app runs in device emulator in xCode and everything is ok, can I be sure that it will work the same way on a real iOS device when I publish it in the appstore?
The XCode simulator does what the name suggest - 'simulates'. It is not identical to the actual hardware, for a number of reasons. Here are just a few of them:
Performance - your computer has much more memory and processing power available than the phone itself. Your app may run fine on the simulator, but quite slow on the device. This is why it's a good idea to run on the device itself, especially if you're doing stuff which could use up a lot of memory.
Missing features - the simulator doesn't allow certain things to be tested, like in app purchase or media/asset management. And obviously you're missing things like the camera, the accelerometers, compass, etc. You can from iOS 5 simulate certain things like the GPS, but nowhere near everything.
Visuals - the simulator runs at your monitor resolution, whereas the phone itself has a much higher DPI display. Things that look readable or fine on the simulator can on device look very different.
If you're not testing your app on an actual device before releasing it to the app store you're doing a disservice to your users - this is Apple's point of view, and one shared by most developers. It's not necessarily what you might want to here, but unfortunately the simulator really is just that - a simulator. You wouldn't want to be in a plane piloted by somebody who had only trained on a simulator. And you probably wouldn't want to use an app that had only been run on the iOS simulator.
Here's what Apple have to say about it in their own documentation:
Although you can do much of your debugging and testing of an iOS application using iOS Simulator, simulation cannot completely match the results of running your application on the target devices; you must test your application on actual devices to ensure that it runs as intended and to tune it for performance on actual hardware.

Difference between Tablets, palm devices, touch pads

Can anybody please help me out with the difference between tablets, iPads and palm devices. I am new in this area and have no idea what are the specifics of this devices or how they differ from one another. iPad is from Apple, are there any other devices similar to iPad but are from HP or Android????
Also what is the difference in developing apps on this machines. Like if I can develop app for an iPad, will it be easy for me to develop a similar one for HP or Android device(if they have something similar to iPhone).
There has been a lot of press lately about tablet devices, Apple seems to have set the pace with the iPad and the iPad 2 is rumored to be announced sometime soon.
iPad apps are written primarily in Objective-C using the iOS SDK free from Apple on the iOS Developer Center. It does cost $99 to deploy apps to a device and distribute them however. There are other tools to develop iOS applications such as MonoTouch and PhoneGap
Blackberry is about to release the Playbook which from my understanding runs Adobe Air applications.
HP just announced the Touchpad which runs WebOS, the applications are primarily built using web technologies (HTML, Javascript, etc)
Then there are a slew of devices coming out that run Android, I think the next one that will be available to consumers is the Motorola Xoom. Android apps are developed primarily in Java using the Android SDK which is free and platform independent.
This market is evolving very fast and there are a lot of players, it seems Apple has the solid ground a this point.
Developing applications for these devices can differ quite a bit, one way that you can reach all devices is by developing a tablet centric webapp such as Yahoo!'s tablet site
I-Pad apps can only be created on a mac PC and will likely share no code with an HP device, I believe HP do make an android laptop but not a touchpad.
Touchpads similar to i-pads do exist and some do indeed run android. Take a visit to your nearest computing or electricals store and they are bound to have one.
A palm device is smaller and fits within the palm of your hand, The i-phone or a blackberry would count as a palm device. Any regular 'non' smartphone(iphones blackberrys again) also classifies but i dont believe this is what you are looking for.
Android is not a company, Android is an operating system that your code will run on. Other companies make the device which then has android installed.

Resources