ADP1폰은 Simcard check 비활성화 방법
ADP1폰은 개발버전 플랫폼으로서 USB debbuging 이 기본적으로 활성화 되어있어서
adb shell 접근에 어려움이 없다.
윈도우xp환경에서 도스콘솔창으로 SDK tools의 adb shell 명령으로 접근한후
아래와 같이 심카드 체크 마법사 기능을 해제한 후 리부팅한다.

C:\eclipse_galileo\plugins\android-sdk-windows-1.6_r1\tools>adb shell
$ ls
ls
sqlite_stmt_journals
cache
sdcard
etc
init
logo.rle
init.trout.rc
init.goldfish.rc
init.rc
default.prop
system
data
sys
proc
sbin
root
dev
$
C:\eclipse_galileo\plugins\android-sdk-windows-1.6_r1\tools>adb shell
$ su
su
# echo app.setupwizard.disable=1 > /data/local.prop
echo app.setupwizard.disable=1 > /data/local.prop
# reboot
reboot

리부팅 후 심카드 체크 창 떠도 메뉴키를 누르면 메인화면을 볼 수 있다.
Posted by 빈솔B
,

android-3

We hope you Android lovers out there are sitting down, because we’re about to knock your socks off. Android 2.0 hasn’t been released, announced, or even pictured. Until now. And we’re doing it like we’re doing it for TV — major screenshots and major information right here, just for you, our beloved readers.

android-17

Android 2.0 looks to be a major improvement in Google’s mobile OS and we couldn’t be more excited about it. From native Exchange support to native Facebook support (it will sync with your contacts), browser improvements, a completely updated Maps application, unified email Inbox — there’s much, much more — and a brand new UI makeover, version 2.0 starts to make Android a really viable (and interesting) platform. Bounce over the jump for all the screenshots and our walkthrough!

android-18

Please note: this isn’t the final build of Android 2.0 and the follow reporting is based on the version we have running. Things can and will change prior to release.

android-7

Microsoft Exchange compatibility looks to be built-in to the OS now, and the new unified Inbox is perfect for keeping up with your personal and corporate email. You can star (flag for the corporate world) emails, mark multiple as read or unread, delete, forward — whatever you want basically. Emails load effortlessly. Unfortunately (or not so unfortunately) the unified Inbox won’t work with your Gmail account as that uses the specific Google-made Gmail email application in Android.

android-22

android-24

android-25

android-27

Maps has been updated to include Layers. We’d imagine this will grow over time but now you can overlay search queries, Wikipedia entries, Latitude buddies, traffic, transit lines, and even load remote My Maps where you can share and receive directions with others. Android 2.0 seems to have some multi-touch gestures built-in like two-finger tapping in Maps, that will zoom in, however, there’s no gesture to zoom out and pinching doesn’t work. © Apple.

android-28

android-29

android-30

android-31

android-32

android-33

The browser has a nice little UI makeover with a redone URL entry bar which includes a Favicon. In terms of performance, no this version we have doesn’t have Flash 10, Google keeps making strides in the browser space. It’s worlds better than anything we’ve used previously on a stock Android OS, and jumps one notch higher than HTC’s customized browser. There is not multi-touch in here as of now, but, you can double tap to zoom in and zoom out which is really all we’ve been asking for since Android 1.0. Oh and did we mention this thing flies? We’re talking ridiculously close to iPhone 3GS web page speeds.

android-14

There’s now a YouTube widget you can place directly on your homescreen and that allows for literally two-click YouTube video uploads. You hit record, the video recording app launches, you type in a title and description for your newly-recorded video, and it’s up and away.

android-5

android-6

android-9

android-10

android-8

android-11

While the settings area is roughly the same overall, there’s a lot of interesting additions in 2.0. For starters, there’s haptic feedback built-in and a brand new Accessibility option. There’s also a new option for Text-to-speech and generally with Android 2.0, you’re given more control over the settings of your phone and more opportunities to customize it based on your liking. Something completely bewildering is the fact that if you set a lock code for the phone (seriously give people a choice to use numbers or letters as the passcode), there’s no lock interval option, so each time your phone turns off (about every 30 seconds when not in use), you’re forced to enter the password again on arrival. Lame.

android-4

Car Home. What? You don’t know what that is? Ok, it’s a new application that’s meant to be used, uh, in your car. Seriously it’s actually quite nice. It’s a consolidated list of icons that help you perform things (presumably using voice commands if you’re driving). Things like doing a voice search across the internet, getting driving directions, viewing a location on a map, selecting a contact, searching through your phone, etc. It’s very cool that you can say, “map of gas stations” and that will open Google Maps and show you on the map where all the gas stations are closest to you. Not exactly new technology, but hey, we didn’t say it was. We said this was all about pushing Android forward, and it is.

android-2

The Amazon MP3 application seems to work over 3G instead of just Wi-Fi now, but whether that is something done because of Android 2.0 or just because of the carrier it’s running on, we’re not positively sure.

android40

Contacts seem to be much more roomy and there’s some great functionality built right in. Instead of hitting the contact and then diving through it to find the contact information you need, just tap the contact’s photo. Up will spring a clean and tidy sub-menu with the pertinent information which can be clicked on. Send someone an email instantly, open up their Facebook profile, or even call them! Very cool and all great things that we love seeing.

Things like the music application and gallery application don’t look to have changed too much, if at all. There also looks to be some more flexibility when defining homescreen shortcuts and things of that nature.

android-19

android-26

android-23

android-16

android-15

android-13

android-12

android-3

android-1

That’s all we have for you today, guys. What do you think of Android 2.0 in its not-final version? We’re loving it. And it could help that it’s running on a pretty bad ass piece of machinery, but hey, that’s for another day.

출처: http://www.boygeniusreport.com/2009/10/16/android-2-0-screenshot-walkthrough/


Posted by 빈솔B
,

 새로운 기능 몇가지 추가되었다

* 먼저 CDMA 지원

- CDMA를 지원하기 위한telephony APIs
- 어플이 모바일 네트웍과 기기상에서도 배포 가능해졌다.

* 추가적인 스크린 사이즈
 - 추가적인 스크린 해상도를 위해 프레임 레벨에서의 지원을 포함한 QVGA, WVGA

* 그 밖의 기능들
 - gesture APIs
 - 텍스트를 읽어주는 엔진
 - Quick Seach Box: 통합검색 기능
 
이처럼 다양한 새로운 기술을 접할 수 있다.
10월경에 android sdk 1.6이 돌아기는 디바이스를 볼 수 있을 꺼라고 하네요 

참고 원문: http://durl.kr/5v8w

아래는 1.6 소개하는 영상
 
Posted by 빈솔B
,

증강현실 예시 G1 구글 스마트폰(안드로이드)으로 구현한 "증강현실 여행가이드"
노키아 스마트폰 N95(심비안OS)의 게임 "AR Tower Defense"

증강현실(Augmented Reality, AR)은 가상현실(Virtual Reality)의 한 분야로 실제 환경에 가상 사물을 합성하여 원래의 환경에 존재하는 사물처럼 보이도록 하는 컴퓨터 그래픽 기법이다. 증강현실은 가상의 공간과 사물만을 대상으로 하는 기존의 가상 현실과 달리 현실세계의 기반위에 가상의 사물을 합성하여 현실세계만으로는 얻기 어려운 부가적인 정보들을 보강해 제공할 수 있는 특징을 가지고 있다. 이러한 특징 때문에 단순히 개임과 같은 분야에만 한정된 적용이 가능한 기존 가상현실과 달리 다양한 현실환경에 응용이 가능하며 특히, 유비쿼터스 환경에 적합한 차세대 디스플레이 기술로 각광받고 있다.

-퍼옴: http://durl.me/5nco

관련 동영상

http://www.youtube.com/watch?v=ReH9dmqfOqA#watch-main-area



Posted by 빈솔B
,
http://www.droiddraw.org/

팀내 선임이 알려주신 사이트. 실제 소스에 적용되기엔 무리가 있어보이지만;;
UI xml이 어떻게 구성되고 각 속성들의 종류와 특성등을 시연해보기엔 괜찮은 툴같다.

tip : 맘대로 에디팅후 왼쪽 상단 구석에 generate 하면 코드를 생성해주며, 반대로 코드를 복사해 넣은후
load 누르면 실제 어떻게 적용되는 지도 확인해 볼 수 있다.
Posted by 빈솔B
,

nicole (안드로이드 무비플레이어 프로젝트명;;)을 만들면서 xml로딩과 같이 시간이 소요되는 작업들은 대부분 Thread로 소화했다. 그런데 Thread 작업중에 UI를 업데이트 하는 작업중 자주 보이는 err stack 내용 중에 CalledFromWrongThreadException 가 자주 보였다. 결국 찾다보니 아래와 같이 떡하니;; 안된다고 한다.

My god, you must change your UI in main thread  but not your new thread , it is  android's rule .
오! 이런, 너는 메인쓰레드에서 너의 UI를 변화시킬려고 하구나, 하지만 네 새 쓰레드에서는 안된단다. 그게 안드로이드 룰이야!!

참고 본문 : http://durl.me/5mse

그렇군;; 

그래서 어쩔수 없이 Thread와 통신할 수 있는 handler를 만들어서 해결했다.
예로 들어보자. 아래와 같은 간단한 쓰레드 작업이 있다.

new Thread() {
   public void run() {
    setClipList();  // 어떤 리스트를 세팅한다. = 쓰레드에서 하는 주 작업
    Message msg = handler.obtainMessage();
    handler.sendMessage(msg);

   }
  }.start();

그러면 아래와 같이 핸들러를 만들어준다.

 final Handler handler = new Handler() {
  public void handleMessage(Message msg) {
   aa.notifyDataSetChanged();  //필자가 원했던 UI 업데이트 작업
  }
}; 

* 위에서는 현재 두 소스가 한 activity에 같이 있는 경우이라서 hander 클래스를 내부 클래스로 선언하는데 문제가 없었으며 만약 Thread를 따로 클래스로 빼고자 할경우엔, 인스턴스 생성시엔 해당 handler를 넘기며 Thread 클래스 생성자에서는 handler값을 받도록 구현하면 된다.

또 하나, 단순히 msg만 가는게 아니고 아래와 같이 msg에 보내고 싶은 값을 설정할 수도 있다.

  Message msg = mHandler.obtainMessage();
   Bundle b = new Bundle();
   b.putInt("downSize", total);
   msg.setData(b);
   mHandler.sendMessage(msg);

자.. 그럼 또 다음 해결책을 찾으러 떠나볼까;;


이글을 쓴지 벌써 4여년이 흘렀네요;;; 휴.. 세월이란..
좋은 API가 1때부터 지원되는게 있었네요
이제는 워낙 좋은 자료들이 많아서 구글링해 보시면 잘 나와있습니다.

다들 건승하세요~

public final void runOnUiThread (Runnable action)

Added in API level 1

Runs the specified action on the UI thread. If the current thread is the UI thread, then the action is executed immediately. If the current thread is not the UI thread, the action is posted to the event queue of the UI thread.

Parameters
actionthe action to run on the UI thread

Posted by 빈솔B
,
현재 아이팟 터치 tv팟 플레이어 어플을 모델로 만든 안드로이드 무비 플레이어 프로토타입 시연 영상입니다.
안드로이드가 streaming play를 지원하는 영상 포멧이 3gp에 한정되어 있어서, 영상이 3gp일 경우는 스트리밍 플레이가 가능하며 mp4 영상일 경우 다운로드 받은 뒤에 플레이 하게 만들었습니다.
인트로 화면>리스트>플레이어 로 depth 가 구성되어 있으며 플레이어는 기본적으로 play, stop 버튼기능과 seek 기능이 구현되어 있습니다. 아직 버그가 많고 많이 미흡한지라.. 앞으로 더욱 박차를 가해보겠습니다. 개발하면서 겪었던 많은 어려움들을 블로깅 할테니 서로 많은 정보 공유가 되었으면 하네요. 암울한 안드로이드 시장에서.. 잘하는 짓인지 모르겠습니다 ㅋㅋ 그래도 잼있는걸 어떡합니까;; ㅋ




Posted by 빈솔B
,
프로젝트하면서 mysql 관해 작업하는데 OTL 로 만든 글귀하나;;
시간내서 이 책도 봐야겠다;; 볼께 너무 많아 ㅜ.ㅜ


Pros and Cons of a Denormalized Schema
A denormalized schema works well because everything is in the same table, which
avoids joins.
If you don’t need to join tables, the worst case for most queries—even the ones that
don’t use indexes—is a full table scan. This can be much faster than a join when the
data doesn’t fit in memory, because it avoids random I/O.
A single table can also allow more efficient indexing strategies. Suppose you have a
web site where users post their messages, and some users are premium users. Now
say you want to view the last 10 messages from each of the premium users. If you’ve
normalized the schema and indexed the publishing dates of the messages, the query
might look like this:
Normalization and Denormalization | 141

mysql> SELECT message_text, user_name
-> FROM message
-> INNER JOIN user ON message.user_id=user.id
-> WHERE user.account_type='premium'
-> ORDER BY message.published DESC LIMIT 10;

To execute this query efficiently, MySQL will need to scan the published index on
the message table. For each row it finds, it will need to probe into the user table and
check whether the user is a premium user. This is inefficient if only a small fraction
of users have premium accounts.
The other possible query plan is to start with the user table, select all premium users,
get all messages for them, and do a filesort. This will probably be even worse.
The problem is the join, which is keeping you from sorting and filtering simultaneously
with a single index. If you denormalize the data by combining the tables and
add an index on (account_type, published), you can write the query without a join.
This will be very efficient:

mysql> SELECT message_text,user_name
-> FROM user_messages
-> WHERE account_type='premium'
-> ORDER BY published DESC
-> LIMIT 10;

발췌: High Performance_mysql_2nd_edition 중에서

Posted by 빈솔B
,

mysql event 삭제시

Mysql 2009. 9. 3. 21:39
mysql client 프로그램 yog로  아무리 event row값을 삭제해봐도 이상하게 제대로 동작되지 않는것이다;;
그런데..
아래 블로그에서 발견한 엄청난 사실!!!
이런 Event 를 삭제하기 위해서는 아래와 같은 SQL 문을 실행하면 된다.
drop event 이벤트명;
즉 위의 e1 이라는 event 를 삭제하기 위해서는 drop event e1; 인 SQL문을 실행하면 된다.
event는 mysql.event 테이블에 등록된다고 했는데 mysql.event 에서 바로 삭제하는경우
메모리의 영향때문인지 삭제후 똑같은 event 명으로 등록을 한경우 앞전에 사용한 event 가 제대로 지워지지 않고 동작하는 경우를 볼수 있다. 그러니 삭제시는 꼭 drop event 이벤트명; 을 이용하길 바란다.

이런 캐삽질;; 나의 아까운 2시간..ㅜ.ㅜ
Posted by 빈솔B
,

android Audio and Video

Android 2009. 9. 2. 22:55
http://developer.android.com/guide/topics/media/index.html

Note: If you're passing a URL to an online media file, the file must be capable of progressive download.

Android SDK에서 기본으로 지원하는 Streaming Protocol로는 3GPP 프로토콜(RTSP)이 있습니다. 그리고 Progressive Download로 http와 3gpp 프로토콜을 지원합니다. 실제 제품에 따라서 Real Media나 Windows Media도 스트리밍도 지원하기도 합니다만 모든 단말에서 동작한다고 가정할 수가 없습니다.
-안드로이드펍커뮤니티 회색님 인용 http://www.androidpub.com/10797

아..아.. mp4는 프로그래시브 다운로드가 지원이 안되는거였구나..
완전 2주간의 개고생이..흙흙.
다음버전을 기다리는 수 밖에..
우선 다운로드로 구현하자꾸나..
에효..
Posted by 빈솔B
,