* 유저 동의 결과를 받는 콜백 함수에서 사용되는 데이터 {
USER_AGREE_SUCCESS = 0, USER_AGREE_TERMS_CLOSE = 1 // only iOS }USER_AGREE_RESULT; |
* Unity Plugin |
public const int USER_AGREE_SUCCESS = 0; |
* Android Native |
int USER_AGREE_SUCCESS = 0; |
* DID 요청 및 ActiveUser 초기화 결과를 받는 콜백 함수에서 사용되는 데이터
* iOS Native, C Plugin typedef enum ACTIVE_USER_RESULT_TYPE { ACTIVE_USER_GETDID_SUCCESS = 0, ACTIVE_USER_GETDID_FAIL = 1, }ACTIVE_USER_RESULT; |
* Unity Plugin |
public const int ACTIVE_USER_GETDID_SUCCESS = 0; |
* Android Native |
int ACTIVE_USER_GETDID_SUCCESS = 0; |
* 모듈 서버 데이터 (Available in 2.6.0 and later)
* iOS Native, C Plugin typedef enum SERVER_STATE_TYPE { LIVE_SERVER = 0, STAGING_SERVER = 1, SANDBOX_SERVER = 2 }SERVER_STATE; |
* Unity Plugin |
public const int LIVE_SERVER = 0; |
* Android Native |
public enum SERVER_STATE { |
* 점검, 업데이트, 공지 팝업 노출 필요 여부를 나타내는 데이터 (Available in 2.6.5 and later)
* iOS Native, C Plugin typedef enum SHOW_POPUP_TYPE { SHOW = 0, NOTSHOW = 1 } SHOW_POPUP; |
* Unity Plugin |
public const int POPUP_SHOW = 0; |
* Android Native |
public enum SHOW_POPUP { |
* 점검, 업데이트, 공지 팝업이 닫혔는지를 나타내는 데이터 (Available in 2.6.6 and later) * iOS Native, C Plugin typedef enum POPUP_STATE_TYPE { CLOSE = 0, UNSHOWN = 1, POPUP_STATE_ERROR = -1 }POPUP_STATE; |
* Unity Plugin |
public const int POPUP_STATE_CLOSE = 0; |
* Android Native |
public enum POPUP_STATE { |
* (Android Only) Android 권한 추가 요청 시 요청에 대한 결과 상태를 나타내는 데이터 (Available in 2.9.0 and later)
* iOS Native, C Plugin typedef enum REQUEST_PERMISSION_STATE_TYPE { SUCCESS = 0, ERROR = -1, NOT_SUPPORT_OS_VERSION = -2, WRONG_TYPE_DATA = -3 } REQUEST_PERMISSION_STATE; |
* Unity Plugin |
public const int REQUEST_PERMISSION_SUCCESS = 0; |
* Android Native |
public enum REQUEST_PERMISSION_STATE { |
* 모듈에서 지원하는 orientation 데이터
typedef enum MODULE_ORIENTATION_TYPE |
* Unity Plugin |
public const int ORIENTATION_ALL = 0; |
* Android Native |
public static final int MODULE_ORIENTATION_ALL = 0; |
void |
void |
in/out | Type | Name | Description |
---|---|---|---|
in | SERVER_STATE | serverState |
설정할 모듈 서버 enum 값 (0 : LIVE_SERVER, 1 : TEST_SERVER, 2 : SANDBOX_SERVER) |
void |
in/out | Type | Name | Description |
---|---|---|---|
in | SERVER_STATE | serverState |
설정할 모듈 서버 enum 값 (0 : LIVE_SERVER, 1 : TEST_SERVER, 2 : SANDBOX_SERVER) |
in | int | showNotice |
팝업 노출 여부 (0 : 미노출, 1 : 노출) (bool 타입 Plugin의 경우 - false : 미노출, true : 노출) |
void |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | server_id |
설정 할 Server ID |
- 전 모듈에서 사용될 게임언어를 설정합니다.
- 함수 미호출 시 단말 언어를 따릅니다.
- C2S.19.6 버전 이상부터 직전에 설정한 게임 언어 설정을 저장하고 있습니다.
- 게임 언어를 설정하지 않을 경우 단말 언어를 따르게 되는데 이런 경우 최초 확인한 단말 언어로 고정 설정됩니다. 게임 언어를 설정하지 않을 경우 단말의 언어를 바꾸어도 모듈 내 UI 언어 표현이 최초 설정한 단말 언어로만 나올 수 있으니 이런 경우를 대응하기 위해선 게임 언어 설정이 필요합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) API 호출 전에 해당 API를 먼저 호출하여 게임 언어를 설정하기를 권장합니다.
- 게임언어 지원코드는 다음과 같습니다.
아랍어 |
ar |
독일어 |
de |
영어 |
en |
스페인어 |
es |
프랑스어 |
fr |
인도네시아어 |
in |
이탈리아어 |
it |
일본어 |
ja |
한국어 |
ko |
포르투갈어 |
pt |
러시아어 |
ru |
태국어 |
th |
터키어 |
tr |
베트남어 |
vi |
중국어(간체) |
zh-hans |
중국어(번체) |
zh-hant |
void |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | game_language |
game_language 코드 값 |
- 모듈 웹뷰 타임아웃 초기 시간을 설정합니다.
- 설정하지 않을 경우 모듈 기본 타임아웃 시간(30초)에 따라 진행됩니다. (default : 30)
- 타임아웃 시간이 지난 경우 페이지 노출 실패 페이지가 노출됩니다. 재시도 버튼이 있어 유저가 다시 연결을 시도할 수 있습니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | int | seconds |
타임아웃 초기 시간 값(초) |
- ActiveUser 모듈 버전을 반환합니다.
- C2S.19.8.1 패키지 이후 모든 모듈 버전이 패키지 버전과 동일한 값을 갖습니다. (ex : C2S.19.8.1)
CM_E_SUCCESS (0) : 성공 (String 타입 Plugin return인 경우 버전값을 String으로 반환) |
in/out | Type | Name | Description |
---|---|---|---|
out | char* | buf |
버전 정보를 받을 메모리 버퍼 |
in | int | bufSize |
메모리 버퍼의 크기 (최대 12byte 필요 - C2S.19.19.19) |
- C2S개별모듈 모든 모듈의 로그를 활성/비활성 합니다.
- 함수 미호출 시 default는 false(0) 입니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | int | isLogged |
로그 활성화 여부 (0 : 비활성, 1 : 활성) |
- DID를 반환합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 호출 시 ACTIVE_USER_GETDID_SUCCESS 응답 확인 후, 필요한 시점에 호출하여 사용합니다.
DID string |
- ActiveUser 초기화 및 DID 요청 성공 여부를 반환하는 콜백을 등록합니다.
- ActiveUser 초기화 함수(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 호출 시 등록된 콜백으로 응답이 전달됩니다. (콜백 함수 가이드 참고)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | ActiveUserCB | cb |
콜백 함수 typedef void (*ActiveUserCB)(ACTIVE_USER_RESULT result); |
- 유저 약관 동의 결과를 반환하는 콜백을 등록합니다.
- ActiveUser 초기화 함수(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 호출 시 등록된 콜백으로 응답이 전달됩니다. (콜백 함수 가이드 참고)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | UserAgreeCB | cb |
콜백 함수 typedef void (*UserAgreeCB)(USER_AGREE_RESULT result); |
- 약관 다시보기 UI를 노출합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 호출로 서버에서 받아온 약관 다시보기 url을 호출하여 웹뷰로 노출합니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | void* | parentView |
(iOS-Only) 해당 게임의 viewController의 view (Android에서는 별도 설정 필요 없음) |
- 약관 다시보기 UI를 노출합니다.
- 임의 url을 입력하여 해당 url를 사용한 웹뷰로 노출합니다. (약관을 별도 웹페이지에 등록하여 사용하는 경우)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | void* | parentView |
(iOS-Only) 해당 게임의 viewController의 view (Android에서는 별도 설정 필요 없음) |
in | const char* | url |
노출할 url |
void |
- (Android-Only) Android 외부 저장소 권한을 ActiveUser 초기화 시 얻기 위한 기능입니다.
- AndroidManifest에 외부 저장소 접근 권한을 선언한 경우 해당 API를 ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 전에 호출하였다면 ActiveUser 초기화 과정에서 외부 저장소 권한을 요청합니다.
- C2S.20.2.2 이상에서 더이상 동작하지 않습니다. (권한 고지 및 요청 동작 변경 업데이트, ActiveUser 초기화 API 설명 참고)
void |
- 점검, 업데이트, 공지 팝업을 노출합니다.
- 팝업 정보는 Hive 콘솔에 등록되어야 합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 호출 시점 외에 팝업을 노출하고 싶은 경우 사용됩니다.
- 파라메터에 등록한 콜백으로 팝업이 닫혔을 경우 신호가 전달됩니다. (콜백 함수 가이드 참고)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | UpdateNoticePopupCB | cb |
팝업이 닫히는 경우 호출되는 콜백 |
- 점검, 업데이트, 공지 팝업에 정보를 반환합니다.
- 팝업 정보는 Hive 콘솔에 등록되어야 합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 호출 시점 외에 팝업을 노출하고 싶은 경우 해당 함수를 사용하여 정보를 받고 팝업 UI를 직접 구현하여 사용합니다.
- 파라메터에 등록한 콜백으로 팝업 구성 정보가 반환됩니다. (콜백 함수 가이드 참고)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | UpdateNoticeInfoCB | cb |
팝업 데이터를 전달받는 콜백 |
- Android 및 iOS의 권한 고지 정보를 반환합니다.
- Android의 권한 고지 정보는 모듈에 포함된 hive_strings_permission.xml 정보 중 AndroidManifest에 선언된 dangerous 권한을 확인하여 반환합니다.
- Android, iOS의 권한 요청 전, 권한 고지 정보를 활용하여 팝업 UI로 구현 및 노출하여 유저에게 고지합니다.
- 권한 고지 정보를 임의 변경하려는 경우 Android, iOS에서 제공하는 리소스 파일을 임의 수정하여 포함합니다. (가이드 참고)
- 파라메터에 등록한 콜백으로 권한 고지 정보가 반환됩니다. (콜백 함수 가이드 참고)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | PermissionViewDataCB | cb |
팝업 데이터를 전달받는 콜백 |
- 모듈의 권한 고지 페이지 노출 여부를 설정합니다.
- 모듈의 권한 고지 페이지는 ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 호출 시 노출되기 때문에 노출을 원하지 않는 경우 초기화 함수 호출전에 해당 기능이 호출되어야 합니다. (false(0))
- 이미 유저가 모듈의 권한 고지 페이지를 확인한 경우라면 해당 함수가 더이상 영향을 주지 않습니다.
- C2S.19.6 버전부터 모듈은 Android dangerous 권한을 사용하지 않습니다. 때문에 C2S.19.6 버전 이후부턴 ActiveUser 초기화 시 모듈 권한 고지가 노출되지 않습니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | int | isOn |
모듈 권한 고지 노출 여부 (0 : 미노출, 1 : 노출) |
- 700 혹은 800으로 정의된 funnelsTrack의 퍼널 로그를 전송합니다.
- 700(앱의 추가 다운로드 시작 시점), 800(앱의 추가 다운로드 완료 시점) 각 상황에 맞게 퍼널 로그를 전송합니다.
- Hive 콘솔에서 퍼널 로그가 전달되었는지 확인할 수 있습니다. (빌드가 어디까지 진행되었는지 확인 가능)
- 모듈 내에서 일부 정의된 퍼널 로그는 해당 시점에 스스로 전달됩니다. (약관 노출 시점, 공지 팝업 노출 시점 등)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | String | funnelsTrack |
700 혹은 800의 정의된 퍼널트랙 값 |
in | String | optionTag |
부가 정보 |
- (Android-Only) Android의 dangerous 권한 팝업을 노출시켜 권한 획득 여부 UI를 노출합니다.
- 요청하고자하는 권한이 AndroidManifest에 선언되어 있어야 합니다.
- 앱에서 자유로운 시점에 유저에게 권한을 받으려는 경우 사용됩니다.
- C2S.19.6 버전부터 모듈은 Android dangerous 권한을 사용하지 않습니다. 앱에서 필요한 권한이 있다면 해당 기능을 통해 유저에게 권한 요청을 바랍니다.- 파라메터에 등록한 콜백으로 유저가 동의한 권한과 동의되지 않는 권한 정보가 반환됩니다. (콜백 함수 가이드 참고)
void |
in/out | Type | Name | Description |
---|---|---|---|
in | String | requests |
요청할 권한 정보 (JSONArray 형태의 String 데이터로 입력) (ex : “{“request”:[“android.permission.READ_CONTACTS","android.permission.READ_PHONE_STATE"]}” |
in | RequestUserPermissionsCB | cb |
권한 고지 요청 결과를 전달받는 콜백 |
- Server ID를 설정하고 프로모션 배너(전면 배너, 새소식)의 이미지 정보를 다운로드 및 갱신합니다.
- 앱에서 프로모션 배너를 사용중일때 Server ID를 변경할 경우 호출이 필요합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 이후에 호출되어야 합니다.
- 이미지 정보를 다운로드 및 갱신하는데 약간의 시간이 필요합니다. 때문에 해당 함수 호출 직후 프로모션 배너를 바로 호출하기 않고 조금의 간격이 필요합니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | serverid |
변경하고자 하는 serverid 입력 |
- 게임 언어를 설정하고 프로모션 배너(전면 배너, 새소식)의 이미지 정보를 다운로드 및 갱신합니다.
- 앱에서 프로모션 배너를 사용중일때 게임 언어를 변경할 경우 호출이 필요합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 이후에 호출되어야 합니다.
- C2S.19.6 버전 이상부터 직전에 설정한 게임 언어를 저장하는 기능을 갖고 있습니다. 다만 게임 언어를 임의 설정하지 않고 단말 언어를 따르도록 한 경우 최초 설정단 단말 언어로 고정 설정되니 게임 언어 설정을 권장합니다.
- 이미지 정보를 다운로드 및 갱신하는데 약간의 시간이 필요합니다. 때문에 해당 함수 호출 직후 프로모션 배너를 바로 호출하기 않고 조금의 간격이 필요합니다.
- 사용 가능한 게임 언어 코드는 ActiveUserSetGameLanguage 함수 가이드를 참고 바랍니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | gameLanguage |
변경하고자 하는 gameLanguage 입력 |
- 애널리틱스 로그 전송 시 로그 전송 옵션 값을 변경합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 전에 호출되어야 합니다.
- 해당 함수 미호출 시 기본 값으로 작동합니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | int | sendLimit | 전송 주기마다 전송할 로그의 최대치 (default: 5) |
in | int | queueLimit | 최대로 적재할 로그 queue의 양 (default: 50) |
in | int | sendCycleSecond | 로그 전송 주기 (default: 1) |
- 임의의 애널리틱스 로그를 전송합니다.
- logData에 들어가는 데이터는 JSONObject 형식을 갖추어야 합니다.
- logData에 category 값을 임의 지정할 경우 Hive 콘솔에서 로그를 확인할 수 있습니다.
* iOS Native, C Plugin |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | logData | 애널리틱스 서버에 전송할 로그 정보 ( ex : “{“charName”:”C2SDev”,”lev”:77,”gem”:50,”category”:”userInfoLog”}” ) |
- 입력받은 UID로 긴급 로그인 설정을 진행합니다.
- 해당 API는 정상 로그인을 진행할 수 없을 때(로그인 서버 이상) 호출되야 합니다. (로그인 서버 이상을 확인할 수 있는 서버 API는 플랫폼실 서버팀에서 확인 바랍니다.)
- 해당 API 호출 시 모듈 내부에 UID가 설정되며 UID를 필요로 하는 기능을 사용할 수 있습니다. (인앱 등)
- 긴급로그인 구현 시 하단의 case를 확인바랍니다.
* iOS Native, C Plugin |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | uid | 긴급 로그인 사용 요청 uid |
- 모듈에서 노출하는 UI의 orientation를 설정합니다.
- 각 게임에서 지원하는 화면 방향에 맞는 설정이 필요합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 전에 호출되어야 합니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | MODULE_ORIENTATION | orientation |
앱 화면 노출 방향 (0 : 가로 및 세로 방향 전환 지원, 1 : 세로 방향, 2 : 가로 방향) |
- 모듈에서 보안 모듈(Hercules) 사용 여부를 설정합니다.
- 모듈을 통해 Hercules 사용 여부 제어를 할 경우 게임 클라이언트에서 Hercules를 초기화하는 코드를 제외 바랍니다. 반면, 게임 클라이언트에서 Hercules를 자체 제어할 경우 파라메터 enable 값을 false로 설정하여 호출합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 전에 호출되어야 합니다.
- 자세한 내용은 Hive 개발자 페이지 허큘리스 가이드를 참고 바랍니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | int | enable |
모듈을 통한 보안 모듈 사용 여부 설정 (0 : 모듈을 통해 사용하지 않음, 1 : 모듈을 통해 사용) |
- HiveCountry 값을 반환합니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 이후 호출해야 정상적인 값을 받을 수 있으며, 초기화가 완료되기 이전에는 Unknown 이라는 값을 받을 수 있습니다.
DID string |
- Hive SDK에 채널 값을 설정합니다.
- 채널 값은 애널리틱스 서버에서 로그 전송 시 사용됩니다.
- 채널 값은 hive_config 설정으로 정의할 수 있으며, CS_SetChannel API 로도 정의할 수 있습니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 이후 채널 값을 변경하는 것을 권장하지 않습니다. 정상적인 애널리틱스 로그 전송을 위해 ActiveUser 초기화 전 채널 값을 설정 바랍니다.
void |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | channel |
게임 앱에서 사용하는 로그인 서비스 플랫폼을 정의한다. |
- Hive SDK에 설정한 채널 값을 반환합니다.
- 채널 값은 애널리틱스 서버에 로그 전송 시 사용됩니다.
- 채널 값은 hive_config 설정으로 정의할 수 있으며, CS_SetChannel API 로도 정의할 수 있습니다.
- ActiveUser 초기화(ActiveUserStart, ActiveUserStartEx, ActiveUserStartWithoutNotice) 이후 채널 값을 변경하는 것을 권장하지 않습니다. 정상적인 애널리틱스 로그 전송을 위해 ActiveUser 초기화 전 채널 값을 설정 바랍니다.
DID string |
- UserAgreeSetCallback에 사용되는 콜백 함수
- 유저 동의 약관 결과를 반환
no return value |
in/out | Type | Name | Description |
---|---|---|---|
in | USER_AGREE_RESULT | result |
유저 약관 동의 결과 |
void UserAgreeCallBack(USER_AGREE_RESULT type)
{ switch (type) { case USER_AGREE_SUCCESS: NSLog(@"USER_AGREE_SUCCESS"); break; default: break; } } |
- ActiveUserSetCallback에 사용되는 콜백 함수
- ActiveUser 초기화 및 DID 요청 결과를 반환
no return value |
in/out | Type | Name | Description |
---|---|---|---|
in | ACTIVE_USER_RESULT | result |
ActiveUser 및 DID 요청 결과 |
void ActiveUserCallBack(ACTIVE_USER_RESULT type)
{ switch (type) { case ACTIVE_USER_GETDID_SUCCESS: NSLog(@"ACTIVE_USER_GETDID_SUCCESS"); NSLog(@"%s", CS_ActiveUserGetDID()); break; case ACTIVE_USER_GETDID_FAIL: NSLog(@"ACTIVE_USER_GETDID_FAIL"); break; default: break; } } |
- UpdateNoticeShowPopup 사용되는 콜백 함수
- 점검, 업데이트, 공지 팝업이 닫혔는지 여부 반환
no return value |
in/out | Type | Name | Description |
---|---|---|---|
in | POPUP_STATE | state |
팝업 닫힘 여부 |
void UpdateNoticePopupCallback(POPUP_STATE state)
{ switch (state) { case CLOSE: NSLog(@"Popup Close"); break; default: break; } } |
- UpdateNoticeGetPopupInfo 사용되는 콜백 함수
- 점검, 업데이트, 공지 팝업 노출에 필요한 데이터 반환
no return value |
in/out | Type | Name | Description |
---|---|---|---|
in | SHOW_POPUP | show |
팝업 노출 필요 여부 |
in | const char* | jsonData |
팝업 데이터 |
void UpdateNoticeInfoCallback(SHOW_POPUP show, const char* jsonData)
{ switch (show) { case SHOW: NSLog(@"Show Popup"); break; case NOTSHOW: NSLog(@"Not show Popup"); break; default: break; } } |
- ActiveUserGetPermissionViewData 사용되는 콜백 함수
- 권한 고지 노출에 필요한 데이터 반환
no return value |
in/out | Type | Name | Description |
---|---|---|---|
in | const char* | jsonData |
권한 고지 페이지 데이터 |
void PermissionViewDataCallBack(const char* jsonData)
{ if (jsonData != null) { // jsonData example (json을 toString한 형태 반환) /** { "contents":"원활한 게임 서비스 이용을 위한 접근 권한 안내", "permissions":[{"title":"(선택)저장공간","contents":"추가 다운로드시 외부 메모리 저장소를 사용할 수 있도록 요청하는 권한입니다.","nativePermissionName":"android.permission-group.STORAGE","permissionCategory":8}], "commons":[{"title":"","contents":"선택 권한은 동의하지 않아도 서비스 이용에 영향을 주지 않습니다.","nativePermissionName":"Common","permissionCategory":9}]} */ }} |
- ActiveUserRequestUserPermissions 사용되는 콜백 함수
- Android dangerous 권한 요청 후 획득 및 미획득 권한 목록 반환
no return value |
in/out | Type | Name | Description |
---|---|---|---|
in | REQUEST_PERMISSION_STATE | state |
권한 추가 요청 시 요청에 대한 결과 상태 |
in | const char* | grantedPermissions |
권한 요청 후 획득 권한 |
in | const char* | deniedPermissions |
권한 요청 후 미획득 권한 |
void PermissionViewDataCallBack(REQUEST_PERMISSION_STATE state, const char* grantedPermissions, const char* deniedPermissions)
{ switch(state) { case SUCCESS: if (grantedPermissions != null) { // 허용된 권한 목록 확인 가능 (json을 toString한 형태 반환) // example :
//
{"grantedList":["android.permission.READ_CONTACTS","android.permission.POST_NOTIFICATIONS","android.permission.READ_PHONE_STATE","android.permission.WRITE_EXTERNAL_STORAGE"]} } if (deniedPermissions != null) { // 거부된 권한 목록 확인 가능 (json을 toString한 형태 반환) // example :
// {"deniedList":["android.permission.READ_CONTACTS","android.permission.POST_NOTIFICATIONS","android.permission.READ_PHONE_STATE","android.permission.WRITE_EXTERNAL_STORAGE"]} } break; } } |