The Coder! ::

삼국지 디펜스2

Job/Mobile 2012/02/09 15:10 Posted by naissance
홍보 동영상

 
저작자 표시 비영리 변경 금지
0 0

보통 안드로이드 프로그래밍시 게임 저장 / 게임 로드를 구현할 때에 다음과 같은 코드를 이용하여 입출력 하게 된다.

FileOutputStream fos;
fos = mContext.openFileOutput("option.and",Context.MODE_PRIVATE);

하지만 우리의 베가 형제들은 이것을 그냥 보고 있지 않았으니...
배터리 탈/부착 시 파일이 사라지는 경우가 있다
이에 따른 해결 방안으로 SharedPrefrences 를 사용하여 코딩한다.

SharedPreferences자체에는 Byte 배열로 입출력하는게 존재 하지 않으므로...
나는 String 으로 해결하기로 결론을 내렸다

하지만, byte 배열에서 String 로 변환하는 동안 한가지 문제가 발생하였다
중간에 '0' 의 값을 가지면 String 가 생성이 덜되는 문제이다

해당 문제는 Base64 로 인코딩을 해 버렸다..!
실제 게임 저장에 쓰인 플로우는 다음과 같다

1. Data 를 byte 배열로 변환
2. Base64 Encoding
3. Base64 Encoding 를 기반으로 hashkey 구함
4. SharedPrefrences 를 아용하여 저장

기본적인 SharedPreferences구현법 이다.

SharedPreferences pref = gActivity.getSharedPreferences("SaveData",Context.MODE_PRIVATE);
Editor e = pref.edit();

e.putString("data","This is the SaveData!");
e.commit();


코드 하이라이트가 줄바꿈이 안되네요... 혹시 아시는분 있으시면 팁을 ㅠ.ㅠ...
0 0

SHW-M420S 갤럭시넥서스 에러

Job/Android 2012/01/19 20:46 Posted by naissance

상당히 길지만... 요런 희한한 에러를 내면서 뻗어버린다..
원인은 TStore ARM Library 에 있는듯하다.

수정은 TStore 에서 해줘야 할것같고.. 

01-19 15:21:21.692 I/DEBUG   (23644): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
01-19 15:21:21.692 I/DEBUG   (23644): Build fingerprint: 'samsung/yakjukr/maguro:4.0.1/ITL41F/M420KREK24:user/release-keys'
01-19 15:21:21.692 I/DEBUG   (23644): pid: 24030, tid: 24032  >>> -- <<<
01-19 15:21:21.692 I/DEBUG   (23644): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000020
01-19 15:21:21.692 I/DEBUG   (23644):  r0 00000000  r1 000106f8  r2 000106f8  r3 40a2d1e8
01-19 15:21:21.692 I/DEBUG   (23644):  r4 40b6d028  r5 4089bc58  r6 024c457f  r7 000106f8
01-19 15:21:21.692 I/DEBUG   (23644):  r8 40b6d000  r9 000106f8  10 40b6d100  fp 408275c4
01-19 15:21:21.692 I/DEBUG   (23644):  ip 00000005  sp 100ffdd0  lr 40817124  pc 408271dc  cpsr 80000010
01-19 15:21:21.692 I/DEBUG   (23644):  d0  0000000000000000  d1  0000000000000000
01-19 15:21:21.692 I/DEBUG   (23644):  d2  0000000000000000  d3  0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d4  0000000000000000  d5  0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d6  0000000000000000  d7  0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d8  0000000000000000  d9  0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d10 0000000000000000  d11 0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d12 0000000000000000  d13 0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d14 0000000000000000  d15 0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d16 0000000000000001  d17 3ff0000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d18 0707070703030303  d19 0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d20 0100010001000100  d21 0100010001000100
01-19 15:21:21.700 I/DEBUG   (23644):  d22 0000000000000000  d23 0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d24 0000000000000000  d25 0000000000000000
01-19 15:21:21.700 I/DEBUG   (23644):  d26 0100010001000100  d27 0100010001000100
01-19 15:21:21.700 I/DEBUG   (23644):  d28 0100010001000100  d29 0100010001000100
01-19 15:21:21.700 I/DEBUG   (23644):  d30 0001000000010000  d31 0001000000010000
01-19 15:21:21.700 I/DEBUG   (23644):  scr 80000012
01-19 15:21:21.700 I/DEBUG   (23644): 
01-19 15:21:21.833 I/DEBUG   (23644):          #00  pc 000431dc  /system/lib/libdvm.so
01-19 15:21:21.833 I/DEBUG   (23644):          #01  pc 00033120  /system/lib/libdvm.so (_Z21dvmHeapBitmapScanWalkP10HeapBitmapPFvP6ObjectPvS3_ES3_)
01-19 15:21:21.833 I/DEBUG   (23644):          #02  pc 000435f4  /system/lib/libdvm.so (_Z24dvmHeapScanMarkedObjectsv)
01-19 15:21:21.833 I/DEBUG   (23644):          #03  pc 000337f0  /system/lib/libdvm.so (_Z25dvmCollectGarbageInternalPK6GcSpec)
01-19 15:21:21.833 I/DEBUG   (23644):          #04  pc 0007bf40  /system/lib/libdvm.so
01-19 15:21:21.833 I/DEBUG   (23644):          #05  pc 0005fafa  /system/lib/libdvm.so
01-19 15:21:21.833 I/DEBUG   (23644):          #06  pc 00012c1c  /system/lib/libc.so (__thread_entry)
01-19 15:21:21.841 I/DEBUG   (23644):          #07  pc 00012770  /system/lib/libc.so (pthread_create)
01-19 15:21:21.841 I/DEBUG   (23644): 
01-19 15:21:21.841 I/DEBUG   (23644): code around pc:
01-19 15:21:21.841 I/DEBUG   (23644): 408271bc e1a04000 e59f01e0 e1a07001 e79f5000 
01-19 15:21:21.841 I/DEBUG   (23644): 408271cc e5940000 e59530b0 e1500003 0a00003a 
01-19 15:21:21.841 I/DEBUG   (23644): 408271dc e590c020 e31c0101 0a000011 ebfffeb9 
01-19 15:21:21.841 I/DEBUG   (23644): 408271ec e5940000 e5903020 e3130202 08bd81f0 
01-19 15:21:21.841 I/DEBUG   (23644): 408271fc e594e008 e2846010 e35e0000 08bd81f0 
01-19 15:21:21.841 I/DEBUG   (23644): 
01-19 15:21:21.841 I/DEBUG   (23644): code around lr:
01-19 15:21:21.841 I/DEBUG   (23644): 40817104 e0888404 e16fcf16 e58d3004 e1a0100a 
01-19 15:21:21.841 I/DEBUG   (23644): 40817114 e1a02009 e1c66c33 e088018c e12fff3b 
01-19 15:21:21.841 I/DEBUG   (23644): 40817124 e3560000 e59d3004 1afffff5 e5971010 
01-19 15:21:21.841 I/DEBUG   (23644): 40817134 e597800c e068e001 e1a0142e e2844001 
01-19 15:21:21.841 I/DEBUG   (23644): 40817144 e2855c01 e1510004 2affffe7 e28dd00c 
01-19 15:21:21.841 I/DEBUG   (23644): 
01-19 15:21:21.841 I/DEBUG   (23644): stack:
01-19 15:21:21.841 I/DEBUG   (23644):     100ffd90  00000000  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffd94  00243466  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffd98  000000e0  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffd9c  000000e0  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffda0  000106f8  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffda4  41e07e98  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffda8  00000000  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdac  80000000  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdb0  40a2e0b8  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdb4  40827158  /system/lib/libdvm.so
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdb8  40b6d008  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdbc  4089bc58  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdc0  064c457f  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdc4  000106f8  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdc8  df0027ad  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdcc  00000000  
01-19 15:21:21.841 I/DEBUG   (23644): #00 100ffdd0  00001400  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdd4  00140100  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdd8  024c457f  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffddc  000107b4  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffde0  40b6d000  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffde4  40817124  /system/lib/libdvm.so
01-19 15:21:21.841 I/DEBUG   (23644): #01 100ffde8  4089bc58  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdec  80000000  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdf0  ffffffff  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdf4  000106e0  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdf8  000106f8  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffdfc  40896f90  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffe00  fffffe4c  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffe04  7fffffff  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffe08  00000000  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffe0c  087d51d6  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffe10  4089bc58  
01-19 15:21:21.841 I/DEBUG   (23644):     100ffe14  408275f8  /system/lib/libdvm.so
01-19 15:21:22.341 W/dalvikvm(24030): threadid=4: spin on suspend #1 threadid=2 (pcf=0)
01-19 15:21:23.091 W/dalvikvm(24030): threadid=4: spin on suspend #2 threadid=2 (pcf=0)
01-19 15:21:23.091 I/dalvikvm(24030): "Compiler" daemon prio=5 tid=4 VMWAIT
01-19 15:21:23.091 I/dalvikvm(24030):   | group="system" sCount=0 dsCount=0 obj=0x417f0de8 self=0x1d7960
01-19 15:21:23.091 I/dalvikvm(24030):   | sysTid=24034 nice=0 sched=0/0 cgrp=default handle=1268592
01-19 15:21:23.091 I/dalvikvm(24030):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
01-19 15:21:23.091 I/dalvikvm(24030):   at dalvik.system.NativeStart.run(Native Method)
01-19 15:21:23.091 I/dalvikvm(24030): 
01-19 15:21:23.091 I/dalvikvm(24030): "GC" daemon prio=5 tid=2 RUNNABLE
01-19 15:21:23.091 I/dalvikvm(24030):   | group="system" sCount=1 dsCount=0 obj=0x417ee5a0 self=0x1e3688
01-19 15:21:23.091 I/dalvikvm(24030):   | sysTid=24032 nice=0 sched=0/0 cgrp=default handle=1656784
01-19 15:21:23.091 I/dalvikvm(24030):   | schedstat=( 0 0 0 ) utm=2 stm=1 core=0
01-19 15:21:23.091 I/dalvikvm(24030):   at dalvik.system.NativeStart.run(Native Method)
01-19 15:21:23.091 I/dalvikvm(24030): 
01-19 15:21:23.294 D/dalvikvm(  178): GC_EXPLICIT freed 66K, 33% free 23548K/34631K, paused 2ms+5ms
01-19 15:21:23.841 W/dalvikvm(24030): threadid=4: spin on suspend #3 threadid=2 (pcf=0)
01-19 15:21:23.848 I/dalvikvm(24030): "Compiler" daemon prio=5 tid=4 VMWAIT
01-19 15:21:23.848 I/dalvikvm(24030):   | group="system" sCount=0 dsCount=0 obj=0x417f0de8 self=0x1d7960
01-19 15:21:23.848 I/dalvikvm(24030):   | sysTid=24034 nice=0 sched=0/0 cgrp=default handle=1268592
01-19 15:21:23.848 I/dalvikvm(24030):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
01-19 15:21:23.848 I/dalvikvm(24030):   at dalvik.system.NativeStart.run(Native Method)
01-19 15:21:23.848 I/dalvikvm(24030): 
01-19 15:21:23.848 I/dalvikvm(24030): "GC" daemon prio=5 tid=2 RUNNABLE
01-19 15:21:23.848 I/dalvikvm(24030):   | group="system" sCount=1 dsCount=0 obj=0x417ee5a0 self=0x1e3688
01-19 15:21:23.848 I/dalvikvm(24030):   | sysTid=24032 nice=0 sched=0/0 cgrp=default handle=1656784
01-19 15:21:23.848 I/dalvikvm(24030):   | schedstat=( 0 0 0 ) utm=2 stm=1 core=0
01-19 15:21:23.848 I/dalvikvm(24030):   at dalvik.system.NativeStart.run(Native Method)
01-19 15:21:23.848 I/dalvikvm(24030): 
01-19 15:21:24.598 W/dalvikvm(24030): threadid=4: spin on suspend #4 threadid=2 (pcf=0)
01-19 15:21:24.598 I/dalvikvm(24030): "Compiler" daemon prio=5 tid=4 VMWAIT
01-19 15:21:24.598 I/dalvikvm(24030):   | group="system" sCount=0 dsCount=0 obj=0x417f0de8 self=0x1d7960
01-19 15:21:24.598 I/dalvikvm(24030):   | sysTid=24034 nice=0 sched=0/0 cgrp=default handle=1268592
01-19 15:21:24.598 I/dalvikvm(24030):   | schedstat=( 0 0 0 ) utm=0 stm=0 core=0
01-19 15:21:24.598 I/dalvikvm(24030):   at dalvik.system.NativeStart.run(Native Method)
01-19 15:21:24.598 I/dalvikvm(24030): 
01-19 15:21:24.598 I/dalvikvm(24030): "GC" daemon prio=5 tid=2 RUNNABLE
01-19 15:21:24.598 I/dalvikvm(24030):   | group="system" sCount=1 dsCount=0 obj=0x417ee5a0 self=0x1e3688
01-19 15:21:24.598 I/dalvikvm(24030):   | sysTid=24032 nice=0 sched=0/0 cgrp=default handle=1656784
01-19 15:21:24.598 I/dalvikvm(24030):   | schedstat=( 0 0 0 ) utm=2 stm=1 core=0
01-19 15:21:24.598 I/dalvikvm(24030):   at dalvik.system.NativeStart.run(Native Method)
01-19 15:21:24.598 I/dalvikvm(24030): 
01-19 15:21:24.700 I/BootReceiver(  178): Copying /data/tombstones/tombstone_07 to DropBox (SYSTEM_TOMBSTONE)
01-19 15:21:24.716 I/ActivityManager(  178): Process - (pid 24030) has died.
01-19 15:21:24.716 W/ActivityManager(  178): Force removing ActivityRecord{41b200a0 -/.SamDefenseIIActivity}: app died, no saved state
01-19 15:21:24.716 I/WindowManager(  178): WIN DEATH: Window{41edad40 -.SamDefenseIIActivity paused=false}
01-19 15:21:24.716 W/WindowManager(  178): Force-removing child win Window{41ee0850 SurfaceView paused=false} from container Window{41edad40 -.SamDefenseIIActivity paused=false}
0 0

vb 링크

분류없음 2009/10/18 21:03 Posted by naissance

http://onetiger.tistory.com/
0 0

[Link/Program] Life Manager

분류없음 2009/09/27 15:09 Posted by naissance
http://gtdlog.net/

* 써볼려고 노력중인 S/W

효율적인 일정을 관리하기 위해서...
0 0
http://support.microsoft.com/kb/q173738
0 0

개장~

분류없음 2007/03/02 23:10 Posted by naissance

블로그를 따로 분리..
많이 적을까 ?

0 0