2019년 6월 19일 수요일

[GOOD LUCK][COCOS] ios 인증서 등록(Certificates, Identifiers, Profiles)

1. 인증 기관에서 인증서 요청 

   1) 키체인 실행 --> 키체인 접근 --> 인증서 지원 --> 인증 기관에서 인증서 요청...





 2) CertificateSigningRequest.certSigningRequest 생성

    - apple 계정의 이메일 입력 한다.
    - "디스크에 저장됨" 체크
    - 계속 버튼을 클릭하여 파일을 자신의 프로젝트 안에 저장한다.




 3) 파일 저장

 
   

2. Certificates 생성

      1) "+" 버튼을 클릭하여 개발용과 배포용을 각각 1개씩 생성한다.


  

    2) iOS Development 생성 (개발용)

       -  iOS App Development 선택 --> Continue 클릭


    - CertificateSigningRequest.certSigningRequest 파일 업로드

      Choose File 클릭하여 위에서 저장한 파일을 업로드 한다. 

  

  3) iOS Distribution 생성 (배포용)

     - iOS Distribution (App Store and Ad Hoc) 선택 --> Continue 클릭



  - CertificateSigningRequest.certSigningRequest 파일 업로드

      Choose File 클릭하여 위에서 저장한 파일을 업로드 한다. 



  4) Certificate 다운로드 및 설치

       ios_development.cer
       ios_distribution.cer

       개발용과, 배포용 둘다 다운로드 후 더블 클릭하면 설치가 됩니다. (키체인 인증서 생성)


       

3. Identifiers 생성

   1) "+" 클릭하여 생성을 진행한다.





  2) "App IDs" 선택 후 진행





  3) Bundle ID 입력 

   xcode의 프로젝트의 Bundle Identifier와 같은 이름으로 Bundle ID를 입력하여 생성 완료 한다.
    






4. Devices 생성

    1) "+" 클릭하여 생성을 진행한다.



   2) Devices 등록      

     장치를 등록 한다.
     실제로 등록할 일은 발생하지 않습니다.
     xcode에서 Automatically manage signing 체크시 장비에
     연결되어 있는 핸프폰은 자동으로 등록이 됩니다.


   





4. Profiles 생성

  "+" 클릭 Development(개발용),   App Store(배포용) 둘다 각각 생성 한다. 




  1) Development(개발용)

      - iOS App Development 선택 --> Continue 클릭


   

  - 위에서 생성한 "App ID" 선택 --> Continue 클릭


  - 위에서 생성한 "Certificate" 선택 --> Continue 클릭


 - 위에서 생성한 "Device" 선택 --> Continue 클릭


 - 이름 입력 후 생성 완료


  2) App Store(배포용)

    - App Store 선택 --> Continue 클릭

     


    - 위에서 생성한 "App ID" 선택 --> Continue 클릭



- 위에서 생성한 "Certificate" 선택 --> Continue 클릭


 - 이름 입력 후 생성 완료



 3) Profiles 다운 로드

   Development(개발용),   App Store(배포용) 둘다 다운 로드

   




4) xcode에 Profiles 적용

  - Automatically manage signing 체크 해제를 한다. 


  - Import Profile... 선택하여 위에서 다운로드 받은
     xxxxxx_debug.mobileprovision 선택하여 적용 시킨다. 


  - release도 debug와 같은 방식으로 적용 시킨다. 




2019년 6월 16일 일요일

[GOOD LUCK][COCOS] cocos 버전업시 필요한 작업(ios)

1. 필요 없는 리소스 삭제 처리 

Resources/ 폴더에 있는 필요 없는 리소스 삭제 처리 
HelloWorld.png
CloseSelected.png
CloseNormal.png


2. signing 적용




3. 빌드 버전 적용

   최신 버전 보다 up 하여 적용 한다.



4. 구글 계정 연동(GoogleService-Info.plist)


   1) URL types 추가

      REVERSED_CLIENT_ID  GoogleService-Info.plist에서 두개의 정보를 파일에서 복사 후 적용 한다. 





  2) 프로젝트의 Frameworks 폴더에 구글 라이브러리 추가

      - sdk 다운로드(https://developers.google.com/identity/sign-in/ios/sdk/)

$ sudo gem install cocoapods
$ sudo gem install cocoapods
$ sudo gem install cocoapods


   3) 이전 버전이 Frameworks 그대로 사용


  



   4) Frameworks 추가 

        마우스 드래그 앤 드롭



   5) Other Linker 추가 

  • Other Linker Flags: $(OTHER_LDFLAGS) -ObjC




   6) 구글 공식 홈페이지  정보 

       - 저도 공식 홈페이지에 따라서 Frameworks 추가하였습니다. 

 




5.  추가 framework 적용

    1) 현재(Google Sign-In SDK 4.4.0) 보다 낮은 버전을 사용하여 추가 framework 있다

      GoogleSymbolUtilities.framework
      GoogleAppUtilities.framework

 


   2)  에러 발생으로 추가 되는 framework

      StoreKit.framework 
      MediaPlayer.framework
      GameController.framework


6. 총 추가된  framework 입니다.





7. 프로젝트 icon 변경





8. LaunchScreenBackground.png 이미지 교체

  

9.Requires full screen 체크 

   Requires full screen에 체크 한다.

  




2019년 6월 14일 금요일

[GOOD LUCK][COCOS] 개발 환경 구성 16 - cocos2d-x - android boost build 에러 (mac) - boost::filesystem

1. boost::filesystem 빌드 에러 


   boost_1_69_0.tar.bz2 버전으로  ndk 19.2로 빌드시
 PROP_MIN_SDK_VERSION=21 이하 일때에는 빌드 에러가 발생 합니다.




 min sdk version을 21 이상으로 빌드 진행해야 문제가 없습니다.


2019년 6월 13일 목요일

[GOOD LUCK][COCOS] 개발 환경 구성 15 - cocos2d-x 3.17.1 - 패치 파일 진행시 can not open downloaded zip file 발생

1. 패치 시스템 버그 

   1) 버그 발생 환경

     AssetsManagerEx 클래스 사용하여
    패치 파일 다운로드 후 압축해제에서 버그 발생


2. 소스 수정

참고 링크
https://forum.cocos.com/t/cocos2dx-3-17-1-can-not-open-downloaded-zip-file/71980

    //unzFilezipfile=unzOpen(FileUtils::getInstance()>getSuitableFOpen(outFileName).c_str());
ssize_t size = 0;
unsigned char* zipFileData = FileUtils::getInstance()->getFileData(outFileName,"rb",&size);
unzFile zipfile = unzOpenBuffer(zipFileData, size);

if (! zipfile)
{
    CCLOG("can not open downloaded zip file %s", outFileName.c_str());
    return false;
}






[GOOD LUCK][COCOS] 개발 환경 구성 14 - cocos2d-x - android 빌드 방식 변경 cmake --> ndk-build

1. android studio의 문제 

  변경 이유는 빌드시 "Updating symbols..."  무한 대기 하는 문제가 발생하여 변경
  


2. Android.mk

   proj.android/app/jni/Android.mk 변경 작업 진행


  1) boost include경로 추가 

  LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../../boost/android/include






  2) boost lib 추가 

    자신이 사용할 lib 추가,  boost의 Android.mk 파일과 연결

LOCAL_STATIC_LIBRARIES := cc_static



#boost lib

LOCAL_STATIC_LIBRARIES += boost_chrono
LOCAL_STATIC_LIBRARIES += boost_date_time
LOCAL_STATIC_LIBRARIES += boost_regex
LOCAL_STATIC_LIBRARIES += boost_system
LOCAL_STATIC_LIBRARIES += boost_thread
LOCAL_STATIC_LIBRARIES += boost_serialization
LOCAL_STATIC_LIBRARIES += boost_filesystem



3) boost lib 경로 지정 


$(call import-module, ../boost/android/lib)



3. boost Android.mk 추가 

   1) Android.mk 파일 추가

      proj.android/app/jni/Android.mk 파일 복사하여 사용 하시면 됩니다. 



  

2) Android.mk 내용

  boost_chrono 이름은      proj.android/app/jni/Android.mk 파일의   LOCAL_STATIC_LIBRARIES += boost_chrono와 연결되니 같은 이름으로 지정 합니다. 

    

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := boost_chrono
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libboost_chrono.a
include $(PREBUILT_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := boost_date_time
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libboost_date_time.a
include $(PREBUILT_STATIC_LIBRARY)


 같은 방식으로 계속 추가 합니다.


앱 링크

1) ios 앱 링크       https://apps.apple.com/app/id1438419928 2) android 앱 링크       https://play.google.com/store/apps/details?id=nondeve...