월별 글 목록: 2010년 1월월

[안드로이드] 시스템 폰트 출력

사용자 삽입 이미지 


1.     폰트를 system/fonts 폴더에 넣는 방법
퍼미션 때문에 그냥 fonts 폴더에 파일을 넣을 수 없습니다. 그래서 아래와 같은 방법을 사용해야 합니다.
a.     adb remount yaffs2 [email protected] rwi 명령
b.    DDMS에서 파일을 넣어봤을 때 space 부족이라고 나오면 에뮬레이터를 종료
c.     emulator -avd avdname -partition-size 256 명령
d.    다시 a 를 입력한 후에 DDMS에 파일을 넣어봅니다.
–       참고 페이지 : http://www.dogadgets.com/tc/entry/android-read-only


2.    폰트를 설정해서 Text 출력하는 방법
Typeface typeFace = Typeface.createFromFile(“/system/fonts/naver.ttf”);
Paint paint = new Paint();
paint.setTypeface(typeFace);
canvas.drawText(“폰트 테스트 입니다. abc 123”, 2, 17, paint);
–       참고 페이지 : http://blog.naver.com/kippee?Redirect=Log&logNo=130068924921

[안드로이드] URL로 파일을 다운로드 받아 저장하기

 특정 URL에 있는 파일을 다운로드 받아서 storage로 저장을 하고 싶을때 아래와 같은 코드를 사용하여 작업할 수 있습니다.



InputStream inputStream = new URL(DownloadURL).openStream();
   
File file = new File(FileName);
OutputStream out = new FileOutputStream(file);
writeFile(inputStream, out);
out.close();


 위 코드에서 DownloadURL 부분과 FileName 부분만 원하시는 내용으로 채워서 사용하시면 됩니다. 사용된 writeFile 함수의 구현은 다음과 같습니다.



public void writeFile(InputStream is, OutputStream os) throws IOException
{
     int c = 0;
     while((c = is.read()) != -1)
         os.write(c);
     os.flush();
}  


 인터넷이 허용된 상태여야 다운로드를 받을 수 있기 때문에 AndroidManifest.xml 파일에 아래와 같이 추가 되어 있어야 에러가 나지 않습니다.



<uses-permission android:name=”android.permission.INTERNET”/>

 만약 sdcard와 같은 곳으로 저장을 한다면 아래 내용도 추가를 해야합니다.



<uses-permission android:name=”android.permission.WRITE_EXTERNAL_STORAGE” />


 파일을 다운로드 받을 필요는 없고, 파일에 있는 값만 컨트롤 하고 싶으면 맨 위에 있는 소스에서 InputStream을 가지고 내용을 얻어와서 사용을 하면 됩니다.