티스토리 뷰

반응형
폰갭에서 FCM은 플러그인을 사용하여 연동해야 한다. 주구장창 Firebase 문서를 봐도 폰갭에 연동할 수 있는 방법은 잘 나오지 않는다.
일단 이 글은 Android를 기준으로 한다.
먼저, cmd 혹은 terminal 창에서 PhoneGap 프로젝트의 root로 이동한다. 시작하기 전에, npm 등을 이용하여 cordova 명령어를 터미널 창에서 사용 할 수 있어야 한다.
 
FCM을 연동하기 전에, 폰갭 컴파일을 컴퓨터에 연결된 모바일 device에서 컴파일 할 수 있게 (실제 안드로이드 프로그래밍 할 때 처럼) 환경을 구축해 주는 것이 좋기 때문에 해당 내용을 먼저 설명 한다.
cordova --force platform rm b rowser
cordova --force platform add browser
cordova --force plugin add cordova-plugin-fcm
(fcm을 설치하고 나서 추가적으로 해 줘야 하는 작업이 있기 때문에 컴파일 환경 구축하기 전에 같이 설치해 준다.)
만약 위 3가지 명령어를 실행중 cordova-plugin-file-transfer 에러시 다음 명령어를 실행하고 위 3가지 명령어를 처음부터 다시 실행해준다.
cordova --force add cordova-plugin-file-transfer

 

후 filebase 페이지에서 앱을 등록한 후 (이 부분은 다른 블로그 등에서 자세히 설명 되어 있어서 생략)

google-service.json을 폰갭 Root 폴더 (config.xml)과 같은 위치에 넣어준다.

그 후,

 

cordova --force platform add android

를 실행해 준다

 

만약

chunk must be a string or buffer 에러 발생시

 

plugins/cordova-plugin-fcm/scripts/fcm_config_files_process.js 파일 안 내용 중

 

// change
var strings = fs.readFileSync("platforms/android/res/values/strings.xml").toString();

// to
var strings = fs.readFileSync("platforms/android/app/src/main/res/values/strings.xml").toString();

 

// AND

 

//change
fs.writeFileSync("platforms/android/res/values/strings.xml", strings);

//to
fs.writeFileSync("platforms/android/app/src/main/res/values/strings.xml", strings);

 

이렇게 변경 해 준후

 

cordova --force platform rm android
cordova --force platform add android

 

그다음 config.xml에서 

<preference name="android-minSdkVersion" value="16" />
<preference name="android-targetSdkVersion" value="26" />

(현재는 run 할 시 minSdk를 16, target을 26으로 맞추라고 경고 문구가 뜬다. 해당 경고 문구에 따라 변경해 주면 될 것 같다.)

두줄을 변경/추가해 준다.

 

그 후 안드로이드 스튜디오 혹은 터미널 창에서 핸드폰이 컴퓨터와 adb 연결 되어있는 것을 확인한 후

(터미널 창에서의 명령어는 adb device로 확인 할 수 있다. adb가 없다고 나오면 환경변수를 추가하자.)

 

cordova run android --device

실행 해주면 된다.

 

run 단계에서 jdk 에러가 나오면 현재 깔려있는 jdk 제거 우 1.8버전으로 재 설치 하면 된다.

 

혹은 google-service-json을 못 찾는다고 나온다면

platforms/android/app 안에 google-service.json을 넣어 준 뒤 다시 한번 run을 해 보면 된다.

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함