21. PHP를 이용한 게임 기록 DB에 저장

0
(0)

이번 시간에는 지난 시간 작성한 PHP 파일을 이용해 게임 기록을 DB에 저장하도록 GameActivity를 수정해 보겠습니다.

지난 번에 게임 플레이 시간을 보여 주기 위해 작성했던 registerUodateHandler() 메서드 안에 게임 기록을 저장하는 saveScore()라는 메서드를 넣어 줍니다.

saveScore() 라는 메서드를 위와 같이 작성하고 게임 기록을 DB에 저장하는 saveRecord() 메서드도 넣어 줍니다.

앱에서 웹서버에 접속하기 위해 HttpClient library가 필요합니다. 아래 링크에서 다운로드 받으시면 됩니다.(처음에 최신 버전인 5.0으로 시도해 봤는데 명령어 같은 게 바뀌었는지 안되서 아래 4.5.12 버전을 사용했습니다. -> 제가 서버관련해서는 아는게 별로 없어 이렇게 저렇게 시도해 보다 찾은 방법이라 설명이 부족한 점 이해 부탁 드립니다.)

Apache HttpClient 4.5.12 download

다운 받은 파일의 압축을 풀어서 나온 파일을 app -> libs 파일에 넣어 줍니다.

새로운 library 추가 후에는 file -> Sync Project with Gradle Files 를 눌러 줘야 사용이 가능합니다.

saveRecord() 메서드를 위와 같이 작성해 주고 지난 시간에 만든 PHP 파일을 서버에 업로드하고 url을 입력해 줍니다.

나머지 필요한 메서드들도 작성해 줍니다. makeHttpPost() 메서드에 params.add() 작성시 name 은 PHP와 동일하게 맞춰 주셔야 합니다.

게임이 인터넷 연결이 가능하도록 AndroidManifest.xml에 INTERNET permission을 추가해 줍니다.

현재 상태에서 앱을 실행해 보면 위와 같이 에러가 발생하는데

build.gradle(Module: app) 에 packagingOptions에 위 내용을 추가해 주면 게임이 정상적으로 실행되는 것을 확인하실 수 있습니다.

이제 게임 기록을 DB에 저장할 수 있게 되었습니다. 다음 시간에는 DB에 저장된 게임 기록은 볼 수 있도록 PHP 파일을 만들어 보겠습니다.

안드로이드 스튜디오 소스

assets

완성된 게임

1) Animal Cards

2) Finger Runner

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

AhnDruid
Author: AhnDruid

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다