Termux 앱이 더 이상 Google Play에서 업데이트를 받지 못하는 이유는 다음과 같습니다.

Termux 팀은 Play 스토어 버전 업데이트를 중단했습니다. 계속해서 업데이트를 받으려면 사용자가 F-Droid 빌드로 마이그레이션해야 합니다.

많은 분들이 잘 알고 계시겠지만, Android 운영체제는 Linux 커널을 기반으로 합니다. 그럼에도 불구하고 Android 및 Linux 앱은 런타임 시스템과 라이브러리가 다르기 때문에 쉽게 교환할 수 없습니다. 그러나 다음과 같은 터미널 에뮬레이터 앱을 얻을 수 있습니다. Termux 모든 Android 기기에서 실행됩니다. 수년간 교활한 Android 사용자는 상당히 큰 Linux 패키지 컬렉션 덕분에 Termux를 편리한 터미널 에뮬레이션 소프트웨어이자 강력한 GNU/Linux 환경으로 사용해 왔습니다. 불행하게도 개발자가 Play 업데이트를 중단하기로 결정함에 따라 앱은 이제 인생의 중요한 전환점에 있습니다. 최근 도입된 Google Play 정책 및 Android SDK 동작으로 인해 버전을 모두 저장하고 F-Droid로 마이그레이션합니다. 변화.

2020년 11월 2일부터 Google Play의 기존 앱에 대한 모든 업데이트는 Android 10(API 레벨 29)을 타겟팅하는 데 필요합니다. 또는 더 높게. 전제 조건은 많은 낙관주의가 흩뿌려진 좋은 소식처럼 들릴 수 있지만, Termux의 상황은 정확히 그런 식으로 진행되지 않았습니다. 프로젝트 GitHub Wiki의 게시물에서 Leonid Pliushch AKA 제피르, 소프트웨어의 주요 기여자, 설명했다 앞서 언급한 API 레벨과의 앱 호환성 문제. Google은 다음을 시행하고 있습니다. W xor X 보안 기능 Android 10부터 신뢰할 수 없는 앱이 설정되는 이유는 다음과 같습니다. targetSdkVersion "29" 이상으로 호출할 수 없습니다 exec() 앱의 홈 디렉터리에 있는 파일. 이러한 설계 효과적으로 Termux를 깨뜨림 모든 패키지에 실행 파일이 포함되어 있으므로 API 레벨 29에 대해 컴파일할 때.

Play 스토어에서 여전히 앱을 찾을 수 있지만 빌드가 심각하게 오래되었습니다. Play 스토어 버전은 Android 10(또는 그 이상)을 공식적으로 지원하지 않기 때문에 SELinux가 허용 모드로 설정되어 있지 않으면 특정 기기에서 셸을 시작하지 않습니다.

심각한 보안 영향. 또한, 루팅되지 않은 사용자는 접근할 수 없다 /proc/net, 즉 netstat 이 인터페이스의 데이터를 사용하는 기타 유틸리티는 더 이상 작동하지 않습니다.

이러한 모든 변경 사항이 Termux의 F-Droid 빌드에 영향을 미치지 않는 이유는 무엇입니까? F-Droid 저장소에 포함하기 위해 패키지를 제출하는 동안 엄격한 Android SDK 버전 요구 사항이 없기 때문입니다. Play Store 변형과 달리 10보다 오래된 Android 버전을 대상으로 하는 빌드는 여기에서 영향을 받지 않으므로 팀은 핵심 기능 손실에 대한 걱정 없이 계속 업데이트를 푸시할 수 있습니다.

[appbox fdroid "com.termux"]

Termux 개발팀은 이제 Play Store 릴리스 사용자가 F-Droid 변형으로 마이그레이션하여 계속 업데이트를 받기를 원합니다. 마이그레이션 프로세스 빌드가 다른 키 세트로 서명되어 원활한 업데이트가 수행될 수 없기 때문에 매우 간단하지 않습니다. 예상한 대로 이러한 변경 사항은 편의를 위해 Play 스토어 업데이트 채널을 선호하는 일반 사용자에게 효과적으로 장벽을 만듭니다.


Android 기기에 Termux 인스턴스가 이미 있는 경우 아래에서 해당 인스턴스를 어떤 용도로 사용하고 있는지 알려주세요!