Dianne, talking about limitations, as a developer I'm not happy at all
with the fact that Android does not support an official interface for
reading SMS messages (simple, the ones that you've received and sent)
and e-mails. I don't understand why the Android designers didn't
include this in the official interface, because it is something
extremely simple to do. A developer who is interested to write an app
which works with SMS mesages and e-mails has to dig into the code of
Android to find out how to do it. However, there is no backward
compatibility guarantee in this approach. I don't know if iOS supports
this, but my impression from discussion platforms is that many
developers are interested in this functionality.

-Ali


On May 26, 9:16 pm, Dianne Hackborn <[email protected]> wrote:
> On Wed, May 25, 2011 at 9:39 PM, Chris Stratton <[email protected]> wrote:
> > On Wednesday, May 25, 2011 6:14:55 PM UTC-4, Dianne Hackborn wrote:
>
> >> I'm still wondering what these "limiting decisions" are.
>
> > I find that surprising, considering the amount of time you spend explaining
> > to people that the things they want to do are not possible, some because
> > they are not yet supported and others because your team intentionally chose
> > to preclude any means for a user to authorize an application to do that.
> > Frankly I would agree some of the things people want to do are really bad
> > ideas; but others a quite good ideas - the point is that this is a
> > subjective decision.  Your team made its choices, but a lot of people
> > disagree with you about what should or shouldn't be allowed or supported,
> > and Android has not in the past been readily suitable for doing things
> > outside of it's architects' vision.  Fortunately, the theoretical
> > possibility of producing one's own build is increasingly becoming a
> > well-organized reality of alternative distributions - changing "one little
> > thing" no longer means going it alone.  Projects that weren't worth doing
> > when there was no base of devices capable of using them become worth doing
> > when the installed base of alternative builds grows.
>
> I think you are using "limiting decisions" in a way different than DanH.
>  What you are talking about here a simply policy decisions about what
> applications will be allowed to do.  They are nothing the platform is tied
> to -- they can always be changed in the next release if there is a
> compelling reason to do so.  (As I said, from a platform maintenance
> perspective it is *much* easier to remove restrictions on what applications
> can do than it is to enforce new ones.)
>
> The vast majority of limitations on applications (beyond what people coming
> from desktop operating systems expect) are there either because there is a
> compelling benefit for the overall platform or ecosystem for them to be
> there, and/or there has not yet been time to design and implement a facility
> for apps to use that is robust and maintainable for many years to come.
>
> But again, these have little do to with whether android has "legs" which was
> the original point of discussion.
>
> Let's take one of the limitations that comes up -- being able to intercept
> input events before they go to other applications.  If we find ourselves in
> a situation where another platform has such a facility, and has allowed some
> developers to write extremely compelling applications that aren't possible
> on android, and this is threatening android's viability in the market, it
> would be fairly trivial to add such a facility to android.  It was actually
> much harder to design and implement android to have the restriction than to
> not have it.
>
> That said, this is something we would 99% positively never just open up,
> because it would have many negative impacts across the platform.
>
> And consider it from the other direction -- if your platform already allows
> applications to freely intercept input events from other apps, and you find
> this is actually harming your platform, how do you fix it?  That's a
> *really* hard problem, especially if you don't want to break a bunch of
> third party apps.  (And when it comes to third party apps, you will often
> find them relying on this kind of stuff in places you never think they would
> have.)
>
> In fact this has been an issue for Windows.  For example to implement the
> UAC dialog in a way that it can be sure the user is interacting with it and
> not some app, one of the things it does is switch to a completely different
> user environment in which the dialog is run, with a screenshot of the
> previous screen shown behind it to make it feel more integrated.
>
> So Android can actually implement a much cleaner and integrated experience
> with the user because of this limitation it places on apps.  More than that,
> *apps* themselves can implement such interactions with users.  Thus, as not
> infrequently happens, imposing a limitation on what applications can do
> actually opens the door for other things.
>
> > I think we are coming out of the most limiting period as official builds
> > are enhanced and alternative builds gain a following on a wide variety of
> > devices, but a lot of things that we expected would be possible with a
> > "pocket linux box" have historically not been possible with android devices,
> > for reasons ranging from the java-apis-first decision to the inability of a
> > user to alter the security model.
>
> Yes if you want Android to be a "pocket linux box," that is not what it is.
>  That really is a different product, and as the example I give above shows,
> making such a product is most likely going to be done at the detriment to
> many good things android provides.
>
> > It probably is worth looking at that subject of security for a minute.  By
> > not giving the user any real ability to customize or exert fine grained
> > control, a given user cannot make their device less secure than the default,
> > but neither can they make it any more secure than a default they may find
> > quite inadequate.  In an official build, I cannot for example decide that
> > it's okay for an application to know if I am on the phone, but not okay for
> > it to be able to discover my phone number.
>
> I certainly agree that this particular permission was poorly done.  This is
> a good example of where giving apps too much access bites us.  I think there
> has been some ongoing work to split those pieces of information apart,
> because clearly access to personal information is a big and growing concern.
>
> These kinds of things have only served to reinforce my feeling that limiting
> what applications as much as possible should be the first design priority.
> :)
>
> --
> Dianne Hackborn
> Android framework engineer
> [email protected]
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to