FreeDroidWarn
(github.com/woheller69)- FreeDroidWarn는 Google의 새로운 개발자 검증 정책에 대응하기 위해 만들어진 오픈 소스 Android 라이브러리임
- Google은 2026/2027년부터 Play Store 외부 앱도 개발자 신원 제출을 요구할 예정임
- 이 라이브러리는 개발자가 직접 Google에 신원을 제공하지 않을 경우 해당 앱이 인증된 Android 기기에서 더 이상 작동하지 않음을 경고하는 알림 기능을 제공함
- 보안과 프라이버시 문제로 정책에 동의하지 않는 앱 개발자에게 유용한 솔루션임
- Apache-2.0 라이선스로 자유롭게 활용 및 커스터마이징 가능함
FreeDroidWarn 개요
- FreeDroidWarn는 Google이 2026/2027년부터 Play Store 외부에서 배포되는 Android 앱에 대해서도 개발자 신원 검증을 의무화하는 정책에 대응하기 위해 제작된 라이브러리임
- 라이브러리는 경고 알림창을 통해 해당 앱이 향후 인증된 Android 기기에서 더 이상 작동하지 않을 수 있음을 사용자에게 알려주는 기능을 제공함
주요 기능 및 목적
- Google 정책에 따라 2026/2027년부터 모든 인증된 Android 기기에서 앱 개발자는 개인 신원 정보를 Google에 직접 제출해야 하는 의무가 생김
- 이러한 요구 사항에 동의하지 않는 개발자는 자체적으로 앱 지원 중단 및 정책 변경 알림을 사용자에게 제공할 필요가 있음
- FreeDroidWarn는 이 같은 상황에서 개발자가 사용자에게 정책 변경 및 향후 이용 불가 가능성을 명확히 안내할 수 있도록 함
사용 방법
- 앱의 onCreate 내에서
FreeDroidWarn.showWarningOnUpgrade(this, BuildConfig.VERSION_CODE);
메서드를 호출하여 경고 알림을 표시함 - 라이브러리는 별도의 개인정보 입력 없이도 간단히 추가할 수 있으며, 경고 메시지를 통해 Google의 새로운 개발자 검증 정책 관련 내용을 사용자에게 안내함
라이선스 및 기타 정보
- Apache V2.0 라이선스로 배포되어 상업적 및 오픈 소스 프로젝트에 자유롭게 사용 가능함
- 모든 코드는 GitHub에서 공개되어 있으며, 누구나 개선 및 커스터마이즈가 가능함
FreeDroidWarn 중요성 및 장점
- Google의 개발자 신원 검증 정책에 동의하지 않거나, 프라이버시 및 보안 문제로 추가적인 신원 제공을 원치 않는 개발자에게 중요한 대안임
- 타 라이브러리와 비교했을 때 간단한 API, 오픈 소스 구조, 구체적이고 명확한 사용자 안내를 제공한다는 점에서 현명한 선택임
- 특히 정책 전환기에 앱 사용자 혼란을 최소화하기 위해 예방적 안내를 도입하고자 하는 개발자에게 강력하게 유용함
Hacker News 의견
-
이 사용자 제한 이슈는 Chromium의 Manifest V3와 비슷한 사례임
- 나는 이 독점 구조가 질려서 Linux 스마트폰으로 전환함, 은행도 바꿔서 CAP와 비슷하게 은행 카드를 2FA 기기로 쓰는 중임 Chip Authentication Program 소개
- 우리 모두가 은행 업무를 웹으로 보기로 하면 어떨지 생각해봄, 편의성은 떨어지지만 데스크탑에 최적화되어 있고, 내 커널을 누가 서명했는지도 확인하지 않으므로 자유로움
- 상당수의 은행(특히 중요한 은행들)은 GrapheneOS를 받아줌, 노르웨이의 DNB와 BankID는 확실히 지원함, 프로그래머 실력이 좋은 은행을 찾는 게 핵심임, 나는 uMatrix 분석으로 DNB를 선택했는데 3rd party 트래커가 하나도 없었고, SpareBank에는 많았음
- 은행이 내 주력 기기가 아니라면, 보조폰을 쓰거나 조금 저렴한 중고 Android 기기를 활용 가능함, 그리고 기회가 된다면 그냥 웹사이트를 쓰는 것도 여전히 방법임, 나도 곧 Linux로 전환할 예정임
- 태국에서 살고 있는데, 여기는 모바일 중심이고 주된 결제 방식이 은행 앱임, QR을 스캔하면 앱이 열리고 바로 이체해서 정말 편함, 그런데 이게 유일한 결제 수단이 되어가고 있음, 이게 바로 시작이고 20~30년 내에 서방에서도 비슷하게 될 것이라고 생각함(개발도상국은 더 빠를 수도 있음), '인증된 앱'이 없으면 금융 시스템에서 배제되고, 허용된 운영체제에서만 돌아감, 이 모든 게 결국 권위주의와 감시 자본주의의 종착점임, 각종 보안·편의 개선이 사실은 감시에 필요한 퍼즐 조각임, 내 생각엔 계획된 음모가 아니라 자본주의 시스템의 자연스러운 귀결임, 종교는 믿지 않지만, ‘짐승의 표’라는 표현이 너무 현실적으로 느껴짐
-
소유권 침해에 대한 기술적 대처는 한계가 있고 결국 대기업이 원하는 그림임, 결국 입법이 반드시 필요함
- 이게 바로 사회적 해결 방식임, 사용자에게 문제를 알리고, 업그레이드하지 않도록 압박하고, 장기적으로는 입법을 요구하는 게 중요함
- 사용자에게 싸우는 방법을 직접 알려주는 call-to-action이 반드시 필요함
- 구체적으로 추진해야 할 것들: WIPO 저작권 조약 폐기, DMCA 철회(특히 1201조 관련), 소유권·수리 권리 법제화 및 강화, 독점기업 분할 및 반독점법 집행
- 오픈 소스이기 때문에 입법이 필요하지 않음, 오픈 소스가 그 자유를 이미 제공함, 당신이 원하는 방식이 아니라 모든 이들에게 이익이 되는 방향이어야 함, 악용을 막으려는 쪽이 99%임으로 이 싸움은 사실상 불가능함
-
이 라이브러리가 GPLv3로 라이선스되어 있다면, 확산에 오히려 제약이 생길 수 있음, 번역 말고는 독특한 가치가 부족해 보임, 대부분의 앱 개발자는 이미 번역 파이프라인을 갖추고 있음, 코드가 너무 단순해서 저작권 보호 기준도 의심스러움
- 복사-붙여넣기(코드 벤더링)의 가치가 과소평가되는 분위기임, 나는 의존성 추가보다 직접 만 줄이라도 가져다 쓰는 게 더 낫다고 생각함, Go 프로젝트에 u-root의 CPIO 구현을 그대로 벤더했는데 의존성을 크게 줄여줌 u-root CPIO 관련
- 요즘은 npm에 ‘is-even’ 한 줄 쓰는 수준과 다를 게 없다고 느낌
- OP에게 LGPLv3로 바꾸는 걸 추천함, 이렇게 하면 사용자도 자유를 지키면서 거부감도 줄일 수 있음
- Apache V2.0 라이선스로 변경함
- Apache V2.0 라이선스로 다시 바꿈
-
Google이 2026/2027년부터는 모든 인증 Android 장치 앱에 개발자 개인정보 제출을 요구한다고 공지함, 이 앱 개발자는 여기에 동의하지 않기 때문에 해당 시점 이후로 인증 Android에서 동작하지 않음, 최소한 사용자 경고는 하는 셈임
-
이런 프로젝트에 GPLv3는 너무 엄격해 보임, 코드의 자유보다 메시지의 확산이 더 중요해 보임
- Apache V2.0 라이선스로 이미 변경함
-
타이밍이 좋음, 나는 새 의존성 없이 간단한 다이얼로그로 해결할 듯하지만, 메시지 자체는 매우 중요함, 앞으로 새 체크가 들어가면 비루트 사용자에게 ADB+Unknown sources 같은 탈출구가 그대로 남을지 궁금함
- 사실 이 라이브러리는 그냥 AlertDialog 래퍼임, SharedPreferences에서 체크만 하는 수준이고 완성도도 아쉬움
-
이 라이브러리가 GPL 라이선스면 프로젝트 전체를 같이 GPL로 해야 해서 실사용에 부담이 큼
- Apache V2.0 라이선스로 라이선스 변경함
-
Google이 학생이나 취미 개발자에게 탈출구를 제공한다고 하긴 했음, 결국은 라벨 5번 터치로 사이드로딩이 활성화되는 정도 아닐지 기대함
- 일반 사용자와 엔지니어가 생각하는 '탈출구'는 다름, 일반인은 최대한 쉽게 접근해야 함, Apple의 경우 소수 앱을 직접 빌드해서만 설치 가능하며, 그조차도 인증서 만기 관리가 매우 불편함, Google도 결국 비슷한 길을 가고 있음
- 일정 수의 앱 설치는 무료로 가능함 안드로이드 개발자 인증 정책
-
“Google 피하기, 특히 Google 제품·폰 사지 않기”가 정답이라는 생각이 듦, 돈이 곧 기업 언어이고 거대 테크 기업은 항상 입법보다 여러 수 단위로 앞서있음
- 하지만 대체제가 iOS(이미 10년 넘게 똑같은 제약)거나 극소수 취향의 OS뿐임, 결국 대중적으로 수익이 안됨
- 아이러니하게도, 오히려 Google 폰이 de-googled Android 설치 등으로 이런 제한을 피하기 가장 좋은 선택지임
-
다이얼로그 하나 띄우자고 의존성까지 쓸 필요는 과함, Google이 Android를 점점 덜 자유롭게 만들고 있다는 점에는 동의하지만, 그냥 다이얼로그 보여주는 게 충분함
- 실제로 코드 품질도 아쉬움, if문 두 갈래에서 거의 똑같은 코드가 반복됨 코드 예시
- 하지만 이런 레포가 스타를 쌓아가며 확산되는 좀 더 상징적인 효과도 일정 부분 있을 것임
- 이런 레포 자체가 실용성보다 사회적 메시지 차원이 큼
- 라이브러리의 강점은 로컬라이즈된 경고 메시지를 제공하는 부분임