<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
On 12-8-2011 11:07, Felipe Monteiro de Carvalho wrote:
<blockquote
cite="mid:CACyNnZPYVoBqNkwwdFcLX1-ZnFZH1A+F89zkcgfvCVy=MLOh=w@mail.gmail.com"
type="cite">Just one hint: Android is a *lot* more then just
drawing some
graphics. For example:
1> Virtual keyboard. There are dozens and dozens, even
widespread
devices like Galaxy Tab come with non-standard keyboards, some of
them
only for China, some only for Taiwan. The manufacturers always
make
sure the standard widgets work fine with those keyboards, but
custom
drawn toolkits have a really hard time keeping up. And you can't
test
this with the emulator, you need 100+ devices to make sure it
works
everywhere. I don't know what Qt did, but I bet it doesn't work
with
half of the virtual keyboards out there.</blockquote>
qt specifies Gingerbread (2.3) afaik. I may be wrong here.<br>
<br>
Besides, it is a simple XML configuration file for the keyboard
mapping and if you want to use it: JNI is inconvienient but NOT
difficult.<br>
There is C++ code for IME softkeybord bindings available from the
android developer website.<br>
<br>
From the platform highlights 2.3:<br>
"<strong>Native input and sensor events</strong><span
class="Apple-style-span" style="color: rgb(51, 51, 51);
font-family: arial, sans-serif; font-size: 13px; font-style:
normal; font-variant: normal; font-weight: normal; letter-spacing:
normal; line-height: normal; orphans: 2; text-align: -webkit-auto;
text-indent: 0px; text-transform: none; white-space: normal;
widows: 2; word-spacing: 0px; -webkit-text-decorations-in-effect:
none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width:
0px; background-color: rgb(255, 255, 255); ">
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em;
margin-left: 0px; padding-top: 0px; padding-right: 0px;
padding-bottom: 0px; padding-left: 0px; border-top-width: 0px;
border-right-width: 0px; border-bottom-width: 0px;
border-left-width: 0px; border-style: initial; border-color:
initial; line-height: 1.3em; ">Applications that use native code
can now receive and process input and sensor events directly in
their native code, which dramatically improves efficiency and
responsiveness.</p>
<p style="margin: 0px 0px 1em; padding: 0px; border-width: 0px;
line-height: 1.3em;">Native libraries exposed by the platform
let applications handle the same types of input events as those
available through the framework. Applications can receive events
from all supported sensor types and can enable/disable specific
sensors and manage event delivery rate and queueing."<br>
</p>
<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em;
margin-left: 0px; padding-top: 0px; padding-right: 0px;
padding-bottom: 0px; padding-left: 0px; border-top-width: 0px;
border-right-width: 0px; border-bottom-width: 0px;
border-left-width: 0px; border-style: initial; border-color:
initial; line-height: 1.3em; "><br>
</p>
</span>
<blockquote
cite="mid:CACyNnZPYVoBqNkwwdFcLX1-ZnFZH1A+F89zkcgfvCVy=MLOh=w@mail.gmail.com"
type="cite">
2> Action completion. In standard apps you can for example
click on a
video and complete the action with any installed video player, and
this requires access to the SDK which is only available from the
Java
side or from the bindings which I built
</blockquote>
See the 2.3 platform highlights above.<br>
<blockquote
cite="mid:CACyNnZPYVoBqNkwwdFcLX1-ZnFZH1A+F89zkcgfvCVy=MLOh=w@mail.gmail.com"
type="cite">3> Application lifecycle, also something different
from other platforms</blockquote>
What do you mean? It isn't.( persé).<br>
If your APK is packaged and signed correctly, an Android machine
that isn't supported won't see your app in the market. If that is
what you mean.<br>
I think this is rather neat/cute/wonderful and saves headaches.<br>
<br>
<blockquote
cite="mid:CACyNnZPYVoBqNkwwdFcLX1-ZnFZH1A+F89zkcgfvCVy=MLOh=w@mail.gmail.com"
type="cite">
4> Orientation change, the app needs to respond to it. With
standard
widgets it automagically works.</blockquote>
Also lower than 2.3 issue, but you have to provide for it in code or
use a browser approach, that's true.<br>
<br>
I must say I am still playing and can't say I have things working in
a generic way. Just that some code that works in the emulator also
works on my Android machine and in a predictable manner.<br>
<br>
<br>
<br>
</body>
</html>