Mock SolutionJUnit 의 TestCase class에서는 Android 관련 API를 쓰지 못한다. 그래서, 이럴경우에 우린 Mockup을 만들어서 쓴다. 대표적인 PowerMockito를 static class를 Mock할때 쓴다.Add two lines above your test case class,@RunWith(PowerMockRunner.class) @PrepareForTest(TextUtils.class) public class YourTest { }And the setup code@Before public void setup() { PowerMockito.mockStatic(TextUtils.class); PowerMockito.when(TextUtils.isEmpty(any(..
To control who is able to receive the broadcast message, you can use the method sendBroadcast:public abstract void sendBroadcast (Intent intent, String receiverPermission)where you precise the name of the required permission. If the receiver does not declare this permission, it will not be able to get the message. For example, the broadcast sender can do:Intent broadcast = new Intent(this, MyBro..
Processing Ordered Broadcasts원문: http://android-developers.blogspot.com/2011/01/processing-ordered-broadcasts.html[이 포스트는 Bruno Albuquerque 에 의해 작성되었습니다. 그는 구글 브라질의 Belo Horizonte 오피스에서 근무하는 엔지니어 입니다. - Tim Bray] 제가 생각하기에 안드로이드 플랫폼 상에서 가장 흥미롭고 강력한 기능 중 하나는 바로 브로드 캐스트와 이를 구현한 BroadcastReceiver 클래스입니다. (이 클래스를 구현한 것을 앞으로는 '리시버' 라고 하겠습니다.) 그 중, 이 포스트 에서는 순서가 정해진 브로드캐스트 (Ordered Broadcast) 에 관해서 이야기..
DP (DIP) dp (dip, density independent pixel) 은 안드로이드에서 여러 화면 크기를 서포트 해주기 위해서 만든 유닛이다.만약 많은 화면에서 내가 만든 레이아웃이 제대로 보이길 원한다면 dp를 써서 화면을 만드는 것이 좋다. 우선 주의할 것은 안드로이드는 160dpi를 기본으로 생각한다.이것은 (320 x 480) 스크린의 density를 나다내는 것이다. 그러므로 480 x 800 (240dpi)의 스크린을 dp로 나타낸다면 320 x 533 (480 / 1.5, 800 / 1.5) 이 된다.dp를 이용해서 레이아웃을 잡을때 이 수치를 꼭 기억하고 잡자!dp로 레이아웃을 잡을때 버튼을 4개 만들고 LinearLayout (horizontal)에 넣은뒤 width를 80dp..
Drawable을 Bitmap으로 변환 private int mTileSize = 24; // icon 사이즈private Bitmap[] mTileArray;public void loadTile (int key, Drawable tile) { //create a canvas using a blank bitmap Bitmap bitmap = Bitmap.createBitmap(mTileSize, mTileSize, Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas (bitmap); // Drawable을 Bitmap의 canvas에 그린다. 그러면 Drawable이 Bitmap에 그려진다. tile.setBounds (0, 0, mTileSize,mTileSi..
Native C Log 보기 일반 적인 Android Native에서 로그 볼때 파일 상단에 #define LOG_TAG "CustomLogTag" // 원하는 로그테그를 작성 #define LOG_NDEBUG 0 // LOGV까지 보고 싶으면 값을 0을 주고 LOGI, LOGD, LOGW, LOGE만 보고 싶으면 1을 주던지 않쓰면 된다. WebCore 하부에서 Android Native 로그를 볼때 #include "config.h" // config.h 밑에다 아래 내용을 정의 해야 된다. #undef LOG // Assertions에 정의된 LOG를 undefine하고 밑에 utils/log.h에서 재정의 하게 한다. #define LOG_TAG "CustomLogTag" #define LOG_N..