NDK를 이용한 JNI 짜보기 아~~ framework 소스에서 jni를 하다가 NDK로 jni를 하려니 죽겠군... NDK를 이용한 JNI는 좀 틀리다. 아니.. 많이 틀리다. 오늘은 첫시간으로 NDK를 이용한 JNI 테스트 프로그램을 간단하게 짜보자. package com.example.hellojni; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; public class HelloJni extends Activity { private static final String TAG = "HelloJni"; @Override protected void onCreat..
갤럭시 S3를 샀다. 그런데 Ubuntu에 꽂아봤더니 인식을 못하더군.. 당연하지.. 안드로이드에서 인식할수 있도록 등록하는 방법은 다음과 같다. 먼저 lsusb명령어로 갤럭시 S3의 USB정보를 보자. 04e8은 vendor ID이다. jlee3@jlee3-VirtualBox:/etc/udev/rules.d$ lsusb Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet Bus 001 Device 003: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II] 그리고 이제 u..
unsigned byte처리자바의 byte는 signed 타입이다. 즉 MAX = 2^7 -1(+127) MIN = -2^7 -1(-127)이다.. +, -를 표시하는데 1비트를 쓰고 있어서 그렇다. 문제는 unsigned byte를 다룰 필요가 있는 경우이다. 예를 들어 네트워크 통신을 할 때 1byte에 0xFF를 넣고, 읽어와야 할 경우가 있다. 이럴때는 어떻게 해야할까?? 아래 소스처럼 0xFF를 하라.. 똑같이 unsigned int는 0xFFFFFFFFL ((long) 0xFFFFFFFF)를 하라 public class UnsignedByte { public static void main (String args[]) { byte b1 = 127; // 01111111 byte b2 = 128;..
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..