Android AppFunctions 직접 써봤더니 이게 안 됩니다

Published on

in

Android AppFunctions 직접 써봤더니 이게 안 됩니다

2026.03.18 기준 / Android 16 (API 36) / Jetpack AppFunctions 1.0.0-alpha08 기준

Android AppFunctions 직접 써봤더니 이게 안 됩니다

구글이 Android AppFunctions를 공개했을 때 반응은 뜨거웠습니다. “이제 AI가 앱을 직접 실행한다”는 말이 퍼졌고, “스마트폰에서 앱을 일일이 열 필요가 없어진다”는 기대감이 생겼습니다. 그런데 공식 문서와 실제 테스트 자료를 같이 놓고 보니, 지금 당장 그렇게 되는 건 아닙니다.

Android 16 이상 필수
Gemini 전용 권한 구조
현재 alpha 라이브러리
지원 앱 3종뿐

Android AppFunctions가 뭔지 30초 요약

Android AppFunctions는 안드로이드 앱이 자신의 기능을 AI 에이전트에게 직접 공개할 수 있도록 만든 프레임워크입니다. 쉽게 말하면, 앱이 “나는 이런 것들을 할 수 있어요”라는 메뉴판을 OS 레벨에 등록해두면, Gemini 같은 AI가 그 메뉴를 보고 사용자 대신 실행해주는 구조입니다. 구글 Android VP Matthew McCullough는 공식 블로그(2026.02 기준)에서 이를 “앱 중심 OS에서 에이전트 중심 OS로의 전환”이라고 표현했습니다. (출처: Android Developers Blog, 2026.02)

기능 구조는 MCP(Model Context Protocol)와 거의 동일합니다. 클라우드 서버에서 MCP가 하는 역할을 Android 기기 위에서 로컬로 수행한다고 보면 됩니다. 사용자가 “엄마한테 오늘 늦는다고 문자 보내줘”라고 말하면, AI가 메시지 앱의 sendMessage 함수를 직접 호출하는 방식입니다. 공식 문서에 따르면 Android 16(API 레벨 36) 이상에서만 작동하며, Jetpack AppFunctions 라이브러리를 사용해 개발자가 함수를 정의해야 합니다. (출처: Android Developers 공식 문서, 2026.03.14 업데이트)

결론부터 말씀드리면, 개념 자체는 매우 강력합니다. 그런데 막상 테스트 자료와 공식 문서를 같이 열어보면 현재 단계에서 작동하는 조건이 꽤 좁습니다.

▲ 목차로 돌아가기

삼성 갤러리에서 먼저 돌아가고 있습니다 — 실제 동작 사례

현재 AppFunctions가 실제로 동작 중인 사례는 삼성 갤럭시 S26 시리즈에서 확인할 수 있습니다. Gemini에게 “삼성 갤러리에서 내 고양이 사진 보여줘”라고 말하면, Gemini가 삼성 갤러리 앱의 AppFunction을 직접 호출해 결과를 Gemini 화면 안에서 바로 보여줍니다. 앱을 따로 열 필요가 없고, 음성과 텍스트 모두 지원합니다. (출처: Android Developers Blog, 2026.02) 이 예시가 중요한 이유는 “AI가 단순히 앱을 열어주는 게 아니라 앱의 데이터를 가져와서 대화 흐름 안에서 처리한다”는 걸 보여주기 때문입니다.

현재 AppFunctions로 지원 중인 앱 카테고리는 캘린더, 노트, 할 일(Tasks) 세 가지입니다. 갤러리는 Galaxy S26 전용으로 먼저 지원되고 있으며, 향후 OneUI 8.5 이상을 실행하는 삼성 기기로 확대 예정입니다. (출처: Android Developers Blog, 2026.02) 세 가지 카테고리만 작동한다는 말은 현재 대부분의 앱에서는 이 기능을 쓸 수 없다는 뜻이기도 합니다.

공식 블로그에서는 “여러 제조사 기기에서 캘린더, 노트, 할 일 기능을 지원한다”고 밝히고 있지만, 실제 사용 가능 기기 목록은 공개되지 않은 상태입니다. 기대했던 것과 달리, 지금 당장 내 스마트폰에서 바로 확인하기는 어렵습니다.

▲ 목차로 돌아가기

일반 앱이 호출하면 막힙니다 — 권한 구조의 실체

💡 공식 발표문과 GitHub 실제 테스트 코드를 같이 놓고 보니 이런 차이가 보였습니다. AppFunctions는 누구나 호출할 수 있는 오픈 API가 아닙니다.

AppFunctions를 실행하려면 EXECUTE_APP_FUNCTIONS 권한이 반드시 필요합니다. 그런데 Android Developers 공식 문서에 따르면, 이 권한은 “에이전트, 앱, AI 어시스턴트”가 가질 수 있다고 쓰여 있습니다. 읽으면 일반 앱도 받을 수 있을 것 같은 느낌입니다. (출처: Android Developers 공식 문서, 2026.03.14)

실제로는 다릅니다. GitHub에 공개된 AppFunctions 파일럿 프로젝트(FilipFan/AppFunctionsPilot)의 설명을 보면, “Android 16 (android-16.0.0_r4 이하) 기기 대부분에서 이 권한은 특권 시스템 앱에만 부여되는 보호 권한(privileged permission)”이라고 명시되어 있습니다. 즉, 일반적으로 설치하는 앱은 이 권한을 받을 수 없습니다. Android Authority 분석에 따르면, EXECUTE_APP_FUNCTIONS는 현재 ASSISTANT 역할을 가진 시스템 앱(= 사실상 Gemini 앱)에게만, EXECUTE_APP_FUNCTIONS_TRUSTED는 Android System Intelligence에만 부여됩니다. (출처: Android Authority, 2024.11 / GitHub FilipFan/AppFunctionsPilot) 이 수치가 의미하는 건 단순합니다. 지금 당장 AppFunctions를 “에이전트 앱”으로 쓰는 건 구글이 직접 만든 Gemini 외에는 사실상 불가능에 가깝습니다.

⚠️ GitHub 테스트 자료에 따르면, 이 권한이 일반 권한(normal)으로 설정된 기기에서는 직접 설치 가능하지만, 대부분 기기에서는 루팅 후 시스템 앱으로 직접 밀어 넣어야 테스트할 수 있습니다. 일반 개발 환경에서는 “앱을 호출하는 쪽” 개발이 현실적으로 막혀 있습니다.

추가로, 앱 개발자는 AppFunctions를 선언할 때 어떤 권한을 가진 호출자만 실행할 수 있는지를 직접 제어할 수 있습니다. 즉 앱이 특정 에이전트만 허용하도록 막을 수 있습니다. 이 구조는 보안 관점에서는 좋지만, 생태계 확산 속도를 늦추는 요인이기도 합니다.

그리고 결정적으로, 현재 AppFunctions Jetpack 라이브러리는 1.0.0-alpha08 단계입니다. Stable 릴리스가 아닙니다. (출처: Android Jetpack AppFunctions 릴리스 노트) 알파 단계 API를 프로덕션 앱에 넣는 건 일반적으로 권장되지 않습니다. 지금 당장 상용 앱에 AppFunctions를 붙이기엔 아직 이른 단계라는 게 공식 입장이기도 합니다.

▲ 목차로 돌아가기

코드 없이도 된다는 UI 자동화, 실제 조건이 있습니다

구글 공식 블로그에서 “개발자가 아무 코드도 안 짜도 AI 에이전트가 앱을 사용할 수 있다”고 설명하는 게 바로 UI 자동화 프레임워크입니다. 앱 화면을 AI가 직접 읽고 조작하는 방식이라, AppFunctions를 구현하지 않은 앱도 이론상 커버됩니다. (출처: Android Developers Blog, 2026.02) 이 부분만 보면 “모든 앱에서 즉시 작동한다”는 인상을 주기 쉽습니다.

그런데 실제 지원 조건을 보면 범위가 좁습니다. 공식 발표에 따르면 UI 자동화 베타는 갤럭시 S26과 Pixel 10 일부 기기에서만 먼저 시작됩니다. 지원 국가는 미국과 한국, 지원 앱 카테고리는 음식 배달·식료품·라이드셰어 세 가지입니다. 실행 방법도 “전원 버튼 길게 누르기”로 Gemini를 호출하는 방식입니다. (출처: Android Developers Blog, 2026.02) 즉 “코드 없이 가능하다”는 말은 맞지만, 이 세 가지 카테고리 안에 속한 앱에 한해서, 특정 기기에서만 지금 체험할 수 있습니다.

UI 자동화는 AppFunctions의 폴백(fallback) 역할을 합니다. 공식적으로 구글은 “AppFunctions가 최적, UI 자동화는 그다음”이라는 2단계 전략을 채택하고 있습니다. 정확도 면에서 AppFunctions가 더 높기 때문입니다. 코드 없는 방식이 더 편해 보이지만, 실제로는 화면을 인식하는 방식이라 앱 UI가 바뀌면 동작이 달라질 수 있다는 점도 고려할 필요가 있습니다.

▲ 목차로 돌아가기

AppFunctions와 MCP, 구조는 같은데 차이가 여기 있습니다

💡 MCP와 AppFunctions를 나란히 놓고 보면 작동 방식이 비슷해 보이지만, 실행 위치와 보안 모델에서 결정적인 차이가 있습니다.

MCP는 클라우드 서버에서 AI 모델이 외부 도구를 호출하는 방식입니다. 반면 AppFunctions는 기기 로컬에서 실행됩니다. 구글 공식 블로그에서도 “WebMCP처럼 서버가 아닌 기기 위에서 함수를 실행한다”고 명시하고 있습니다. (출처: Android Developers Blog, 2026.02) 로컬 실행이라는 점은 네트워크 없이도 동작할 수 있다는 장점이 있지만, 반대로 AI 추론도 로컬에서 하려면 Gemini 같은 온디바이스 모델이 필요하다는 제약이 생깁니다.

구분 MCP AppFunctions
실행 위치 클라우드 서버 기기 로컬
호출 주체 LLM (모든 호환 클라이언트) EXECUTE 권한 보유 앱만 (현재 Gemini)
OS 요건 없음 Android 16 이상 필수
현재 단계 Stable 다수 alpha-08 (미출시)
데이터 이동 서버 왕복 기기 내 처리 (프라이버시 유리)

두 가지를 비교하면 AppFunctions의 강점은 명확합니다. 데이터가 기기 밖으로 나가지 않는 프라이버시 구조, 오프라인 환경에서도 동작할 가능성, 앱이 직접 함수를 정의하므로 오작동 가능성이 낮다는 점입니다. 그러나 현재 호출 주체가 사실상 Gemini로 고정되어 있다는 점에서, 구글 생태계 밖의 AI 에이전트는 사용할 방법이 없습니다. 이 부분은 Android 17에서 확장 여부를 지켜봐야 합니다.

▲ 목차로 돌아가기

개발자 입장에서 지금 당장 해야 할 게 있을까요

공식 블로그에서 구글은 “현재 소수의 앱 개발자들과 함께 경험을 구축 중이며, 올해 중에 더 많은 개발자에게 AppFunctions 참여 방법을 공유할 예정”이라고 밝혔습니다. (출처: Android Developers Blog, 2026.02) 즉 지금 당장 모든 개발자가 AppFunctions를 상용 앱에 적용하는 게 구글의 의도는 아닙니다. 일단 지켜보는 게 맞습니다.

그렇다고 아무것도 안 해도 되는 건 아닙니다. 지금 시점에서 준비할 수 있는 건 두 가지입니다. 첫째, Android 16 대응 여부를 확인하는 겁니다. AppFunctions는 Android 16 이상에서만 동작하며, targetSdkVersion을 올리는 작업과 함께 가야 합니다. 이 부분은 이미 2026년 내에 구글 플레이 정책상 대응이 필요한 사항이기도 합니다. 둘째, AppFunctions Jetpack 라이브러리 릴리스 노트를 주기적으로 확인하는 겁니다. alpha에서 beta, stable로 넘어가는 시점이 실제 적용 타이밍입니다. (출처: Android Jetpack AppFunctions releases)

솔직히 말하면, 지금 가장 먼저 AppFunctions를 체험할 수 있는 건 갤럭시 S26이나 Pixel 10을 들고 있는 일반 사용자입니다. 개발자는 아직 알파 라이브러리로 테스트 단계이고, 호출 주체도 Gemini로 제한되어 있기 때문입니다. Android 17 발표 이후가 실질적인 분기점이 될 가능성이 높습니다.

개인적으로 이 구조에서 흥미로운 점은 따로 있습니다. SEO가 “구글 검색에 내 콘텐츠를 잘 보이게 하는 것”이었다면, AppFunctions 생태계에서는 “Gemini 에이전트가 내 앱의 기능을 선택하게 만드는 것”이 새로운 최적화 영역이 됩니다. 앱의 AppFunction을 얼마나 잘 설명(self-describing)하느냐가 AI 에이전트의 앱 선택에 영향을 줄 수 있습니다. 이건 아직 아무도 구체적인 전략을 이야기하지 않는 부분입니다.

▲ 목차로 돌아가기

자주 묻는 질문

Q1. Android AppFunctions는 지금 내 폰에서 바로 쓸 수 있나요?
Android 16 이상이 설치된 기기에서만 작동합니다. 현재 실제로 AppFunctions가 동작하는 환경은 삼성 갤럭시 S26 시리즈와 Pixel 10 일부입니다. 일반적인 안드로이드 기기에서 바로 체험하기는 아직 어렵습니다. (출처: Android Developers Blog, 2026.02)
Q2. AppFunctions를 내 앱에 붙이려면 어떻게 해야 하나요?
androidx.appfunctions Jetpack 라이브러리를 추가하고, 공개하려는 함수에 @AppFunction 어노테이션을 붙이면 됩니다. 단, 현재 라이브러리는 alpha-08 단계로 프로덕션 적용은 권장되지 않습니다. 공식 Jetpack 릴리스 노트(developer.android.com/jetpack/androidx/releases/appfunctions)에서 stable 전환 시점을 확인해야 합니다.
Q3. Gemini가 아닌 다른 AI 에이전트도 AppFunctions를 호출할 수 있나요?
현재는 사실상 어렵습니다. EXECUTE_APP_FUNCTIONS 권한이 대부분 기기에서 시스템 앱 전용 보호 권한으로 지정되어 있고, 현재 이 권한은 ASSISTANT 역할 앱(= Gemini)에만 부여됩니다. (출처: Android Authority, 2024.11 / GitHub FilipFan/AppFunctionsPilot) Android 17에서 이 구조가 바뀔 가능성은 있지만 확인이 필요합니다.
Q4. UI 자동화와 AppFunctions 중 어떤 걸 먼저 써야 하나요?
구글은 공식적으로 AppFunctions를 우선 권장하고, UI 자동화는 AppFunctions가 없는 앱에 대한 fallback으로 설명합니다. AppFunctions는 정확도가 높고 개발자가 제어 가능한 반면, UI 자동화는 코드 없이 적용되지만 UI 변경에 취약할 수 있습니다. (출처: Android Developers Blog, 2026.02)
Q5. AppFunctions를 쓰면 개인정보가 클라우드에 올라가나요?
AppFunctions는 기기 로컬에서 실행되도록 설계되어 있습니다. 구글 공식 블로그에서도 “프라이버시와 보안을 핵심 설계 원칙으로 유지한다”고 명시했습니다. (출처: Android Developers Blog, 2026.02) 다만 AI 추론 처리가 Gemini 앱을 통해 이뤄지는 경우 일부 데이터가 서버를 거칠 수 있으며, 이 부분은 Gemini의 개인정보처리방침에 따라 다릅니다. 정확한 데이터 처리 범위는 별도 확인이 필요합니다.

▲ 목차로 돌아가기

마치며

Android AppFunctions는 방향 자체는 맞습니다. 앱을 일일이 열지 않고 AI에게 말로 작업을 맡기는 흐름은 분명 계속될 것입니다. 삼성 갤럭시 S26에서 이미 Gemini가 갤러리를 직접 호출하는 장면은, 단순한 데모가 아니라 실제 제품에서 작동하고 있다는 증거입니다.

다만 지금 시점에서 “이제 모든 게 바뀐다”고 받아들이면 기대와 현실 사이에서 헷갈릴 수 있습니다. Android 16 이상 기기가 필요하고, 호출 권한은 사실상 Gemini 전용이며, 라이브러리는 아직 알파 단계입니다. 지원 카테고리도 세 가지입니다. 이 조건들은 공식 문서에 다 적혀 있는데, 흥분한 요약 글들이 이 부분을 빠르게 넘어가는 경향이 있습니다.

개발자 입장에서는 Android 17 발표 타이밍을 기점으로 AppFunctions 생태계를 다시 살피는 게 현실적입니다. 일반 사용자 입장에서는 갤럭시 S26이나 Pixel 10을 쓰고 있다면 지금 당장 Gemini에서 체험이 가능합니다. 나머지는 올해 말 Android 17 발표가 기준점이 될 것입니다.

▲ 목차로 돌아가기

본 포스팅 참고 자료

  1. Android Developers 공식 문서 — AppFunctions 개요 (2026.03.14 업데이트)
  2. Android Developers Blog — The Intelligent OS: Making AI agents more helpful (2026.02)
  3. Android Authority — Android 16 could give Gemini the power over apps (2024.11)
  4. GitHub — AppFunctionsPilot (권한 구조 실측 자료)
  5. Android Jetpack — AppFunctions 릴리스 노트 (alpha-08 기준)

본 포스팅 작성 이후 서비스 정책·UI·기능이 변경될 수 있습니다. Android AppFunctions는 현재 알파 단계 Jetpack 라이브러리(1.0.0-alpha08) 기반이며, Android 16 이상 기기에서만 작동합니다. 본 내용은 2026년 3월 18일 공식 문서 및 공개 자료 기준으로 작성되었습니다. 이후 Android 17 발표 및 Jetpack stable 전환에 따라 내용이 크게 달라질 수 있습니다.

댓글 남기기


최신 글


아이테크 어른경제에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기