> For the complete documentation index, see [llms.txt](https://developers.fingerpush.com/app-push/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.fingerpush.com/app-push/sdk-manual/android/private-key.md).

# 비공개 키 생성 및 등록

{% hint style="info" %}
FCM이 기존 서버키 방식에서 비공개 키 방식으로 변경됩니다.
{% endhint %}

## 비공개 키 생성

1\) 파이어베이스 콘솔 이동 후 비공개 키를 생성하고자 하는 프로젝트를 선택합니다.

{% embed url="<https://console.firebase.google.com>" %}

2\) '프로젝트 설정 > 서비스 계정' 메뉴로 이동하여 '새 비공개 키 생성' 버튼을 클릭하여 생성된 비공개 키(\*.json)를 다운로드 받습니다.

<figure><img src="/files/LifGyEKBJLoAaQpv4EP2" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
비공개 키는 복수로 생성할 수 있으나, 생성된 키는 1회만 다운로드 가능하니 안전한 위치에 저장합니다.
{% endhint %}

<figure><img src="/files/KvhkLzB2DKIJiuU5Duq4" alt="" width="375"><figcaption></figcaption></figure>

3\) 비공개 키를 생성하고 FCM API(V1)이 '사용 중지됨' 된 경우 'Google Cloud Console > APIS' 로 이동하여 사용 설정해야 합니다.

<figure><img src="/files/K0UT8YBaWmldEvMhCWYE" alt=""><figcaption></figcaption></figure>

{% embed url="<https://console.cloud.google.com/apis>" %}

4\) API 항목에서 Firebase Cloud Messaging API 를 선택한 뒤, 사용을 클릭하여 '사용 설정됨' 으로 변경되어 있는지 확인합니다.

<div><figure><img src="/files/GH43dGTns1vMTYmlYItd" alt=""><figcaption></figcaption></figure> <figure><img src="/files/OhecOm2emF7EZRIrjoS6" alt=""><figcaption></figcaption></figure></div>

## 비공개 키 등록

1\) 핑거푸시 콘솔로 이동합니다. 로그인 후 'APP PUSH' 메뉴로 이동합니다.

2\) 업로드하려는 앱을 선택한 뒤, '앱 설정 > 플랫폼 설정' 으로 이동합니다.

<figure><img src="/files/bZQ6zAzNlRhKQKQJCwdy" alt=""><figcaption></figcaption></figure>

3\) FCM 설정을 선택하여 다운로드 받은 비공개 키(\*.json) 및 프로젝트 패키지명을 입력하고 등록합니다.

<div><figure><img src="/files/MEbJ70BB50yu5su1VWGN" alt=""><figcaption></figcaption></figure> <figure><img src="/files/ZsF5Lcm6IsevJlE1xSHr" alt=""><figcaption></figcaption></figure></div>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developers.fingerpush.com/app-push/sdk-manual/android/private-key.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
