GPhone? Just a Rumor - The Real Story Is The Android Developer Revolt
readwriteweb.com
readwriteweb.com
Basically, Google is trying to ship a phone first, and then worry about the SDK and developers. Their API and software stack is changing a lot while developing for real devices, therefore anything they relesead now, would be obsolete.
So, Developers are going to get a SDK only when google is about to ship real devices. The real issue is that they are taking forever to release a a real device,
and:
1. Their API sucks ass (so many hooplas to do even simple things, very kludgy).
2.Their UI is really not that great, especially compared to iPhone. Sure, it might be better than Symbian or Winmo, or Blackberry, but when it comes out, it will be nothing that exiting.
Even the "Button" widget, extends the ImageSwap, which is a view, which has a gazillion of methods yet:
It doesn't do the thing you want! You can give it a background, but only one image associated with it, and there is the highlight, which is a color.
All I want is a ficking button that takes a normal, hover, pressed images. How hard is that? Well with Android you have to dig down, and extend it and change the code in order to get what you want.
Not elegant at all google.
http://code.google.com/android/reference/android/widget/Imag... Summary Methods inherited from class android.view.View awakenScrollBars, awakenScrollBars, bringToFront, buildDrawingCache, clearAnimation, clearFocus, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeScroll, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, copyWindowBitmap, dispatchDraw, dispatchFreeze, dispatchKeyEvent, dispatchThaw, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchWindowFocusChanged, dispatchWindowVisibilityChanged, draw, drawableStateChanged, finalize, findFocus, findViewById, findViewWithTag, focusSearch, freeze, getAbsoluteLocationOnScreen, getAnimation, getBackground, getBaseline, getBlockDescendantFocus, getBlockUnmatchedKeyUps, getBottom, getBottomFadingEdgeStrength, getContext, getContextMenuInfo, getDefaultSize, getDrawableState, getDrawingCache, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getFocusType, getFocusables, getFocusedRect, getGlobalVisibleRect, getGlobalVisibleRect, getHandler, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarHeight, getId, getInstanceCount, getLayoutParams, getLeft, getLeftFadingEdgeStrength, getLocalVisibleRect, getLocationInWindow, getLocationOnScreen, getMeasuredHeight, getMeasuredWidth, getOnFocusChangeListener, getPaddingBottom, getPaddingLeft, getPaddingRight, getPaddingTop, getParent, getResources, getRight, getRightFadingEdgeStrength, getRootView, getScrollX, getScrollY, getTag, getTop, getTopFadingEdgeStrength, getVerticalFadingEdgeLength, getVerticalScrollbarWidth, getViewRootInstanceCount, getVisibility, getWidth, getWindowFrame, getWindowSession, getWindowToken, getWindowVisibility, hasBackground, hasFocus, hasWindowFocus, inTouchMode, initializeFadingEdge, initializeScrollbars, invalidate, invalidate, invalidate, invalidateDrawable, isClickable, isDrawingCacheEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isFreezeDisabled, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isLayoutRequested, isPressed, isSelected, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, layout, measure, mergeDrawableStates, onAttachedToWindow, onCreateDrawableState, onDetachedFromWindow, onDraw, onDrawBackground, onFinishInflate, onFocusChanged, onFreeze, onKeyDown, onKeyMultiple, onKeyUp, onLayout, onMeasure, onPopulateContextMenu, onScrollChanged, onSizeChanged, onThaw, onTouchEvent, onTrackballEvent, onWindowFocusChanged, onWindowVisibilityChanged, performClick, performLongClick, populateContextMenu, post, postDelayed, postInvalidate, postInvalidateDelayed, press, refreshDrawableState, requestFocus, requestFocus, requestFocus, requestLayout, requestRectangleOnScreen, requestRectangleOnScreen, resolveSize, scheduleDrawable, scrollBy, scrollTo, setAnimation, setBackground, setBackground, setBackgroundColor, setBlockDescendantFocus, setBlockUnmatchedKeyUps, setClickable, setDrawingCacheEnabled, setDrawingCacheQuality, setEnabled, setFadingEdgeLength, setFocusType, setFocusable, setFocusableInTouchMode, setFreezeDisabled, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setId, setLayoutParams, setMeasuredDimension, setOnClickListener, setOnFocusChangeListener, setOnKeyListener, setOnLongClickListener, setOnPopulateContextMenuListener, setPadding, setPreferredHeight, setPreferredWidth, setSelected, setTag, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVisibility, setWillNotCacheDrawing, setWillNotDraw, startAnimation, thaw, unpress, unscheduleDrawable, unscheduleDrawable, verifyDrawable, willNotCacheDrawing, willNotDraw
I'm still optimistic about Android because it would be really nice to have an open device with the polish and capabilities of the iPhone. However, Google still has a lot to prove. MS, Apple, BB, and Palm all have shown that their routes work. While Google's Android isn't a radical departure, is the fact that it could be forked enough to put a fork in it? Time will tell.
Here's my take on the Android situation:
http://journal.dedasys.com/articles/2008/07/09/google-androi...
What really bugs me is that their lines of communication completely shut down for some reason, which is just bizarre.