차례:
당신의 안드로이드 전화를 만드는 회사는 안드로이드 메모리 관리를 잘못하고 있습니다. 모범 사례와 경우에 따라 Google Play에 액세스하기위한 실제 요구 사항이 준수되지 않기 때문에 다른 개발자가 화면을 보거나 디스플레이를 켜는 동안 앱을 빌드해야하는 경우 앱 개발자에게 새로운 문제가 발생합니다. 떨어져서. 고맙게도 Urbandroid 팀은 Dontkillmyapp.com을 통해 우리의 관심을 끌었습니다. 여기에서는 문제에 대한 자세한 설명과 인기있는 Android 공급 업체의 점수 표에서 1 ~ 5 개의 쓰레기 더미로 각각의 악용 수준을 평가합니다. 입어 보기
웹 사이트의 GitHub 페이지에있는 설명은 다음을 설명합니다.
궁극적으로 모든 인디 안드로이드 개발자는 적어도이 문제의 영향을받습니다.
Urbandroid Team의 Android 앱으로 Sleep에 큰 영향을 미쳤으며 해킹 및 해결 방법에 대한 많은 정보를 수집하여 정보를 공유해야 할 필요성을 느꼈습니다. 우리는 정보 교환에 대한 제안을 개별 인디 개발자에게 문의하여 오픈 소스 웹 사이트 형태로보다 효과적인 접근 방식을 제안했습니다.
"문제"는 전화를 만드는 회사가 Doze와 같은 Android 구성 요소의 작동 방식을 변경했다는 것입니다. 시스템 리소스를 사용하는 앱을 적극적으로 스윕 및 종료하도록 설계된 앱을 구축했습니다. 화면에 표시되지 않은 상태에서 실행할 수있는 앱을 나타내는 화이트리스트 작성도 포함됩니다. Android 앱이 의도 한 작업을 수행 할 수 없기 때문에 Urbandroid 's Sleep과 같이 백그라운드에서 작동해야하는 앱을 만들고 있습니다.
불행한 고객은 안드로이드의 메모리 관리가 어떻게 작동하는지 (필요하지 않아야 함), 왜 영향을받는 앱과 분리되어 있지 않은지 이해하지 못하기 때문에 앱 개발자의 귀에 달려 있습니다. 불행한 고객은 불행한 개발자를 만듭니다. 이것은 우리 모두에게 나쁜 5 가지 더미입니다.
모든 안드로이드가 열려있는 것은 아닙니다
"무엇입니까? Android는 오픈 소스이며이를 사용하는 회사는 원하는 코드로 원하는 작업을 수행 할 수 있습니다."라고 생각할 수 있습니다. 그러나 전화 제조업체가 Google Play에 액세스하려는 즉시 모든 변경 사항이 적용됩니다.
Google Play 스토어 액세스는 자유롭게 제공되지 않습니다. 양측이 준수해야한다는 계약이 있습니다.
Google Play에 액세스하려면 몇 가지 규칙을 준수해야합니다. 그것은 다른 기사 또는 두 가지에 대한 더 큰 토론이지만, 요점은 Google이 모든 휴대 전화에 최소한의 물건을 배치하여 휴대 전화가 지원되는 한 Play 스토어의 모든 앱이 작동하기를 원한다는 것입니다 번역. 즉, 앱 목록에 Android 4 이상이 필요하다고 표시되면 Android 4 이상을 실행하는 모든 휴대 전화에서 앱을 설치하고 사용할 수 있어야합니다. 예외 없음.
적극적으로 화면을보고 있지 않을 때마다 백그라운드에서 앱을 활성화하고 작업하기를 원하거나 필요로하는 개발자가 모든 휴대폰에서 일관된 방식으로 수행하는 몇 가지 자세한 방법이 있습니다. 그런 다음 Google은 또한 Android의 다른 부분을 개선하고 모든 앱이 여전히 작동하기를 원한다면 혼란을 피할 수 있으므로 이전 버전과의 호환성을 유지할 수 있습니다.
항상 작동하지는 않습니다. Nexus 또는 Pixel 휴대 전화를 사용하는 모든 사람은 새로운 버전의 Android로 인해 더 이상 앱이 더 이상 작동하지 않으며 일부는 업데이트되지 않는다고 말합니다. 때로는 새로운 일로 대체하기 위해 결정을 내리고 오래된 기능을 잘라야합니다. 그리고 구글은 안드로이드 6.0에서 Doze의 초기 릴리스와 같이 한두 시간 만에 혼란을 겪었습니다.
Google의 다른 제품을 사용하려면 일관성을 유지하는 것이 중요합니다. 오픈 소스 소프트웨어로도 가능합니다.
어떻게 여기까지 왔어?
스마트 폰 제조업체는이 일을 단순히 재미로하지 않습니다. 전화를 만드는 모든 회사는 다음에 전화를 구입할 때 브랜드를 볼 수있을 정도로 구매 한 제품을 좋아하기를 원합니다. 아무 이유없이 앱이 종료되면 도움이되지 않습니다.
우리가 전화를 구입할 때 일반적으로 우리가 원하는 것의 상단에 가까운 것은 배터리 수명이 길다는 것입니다. 배터리 수명을 늘리는 한 가지 방법은 휴대 전화의 기능을 제한하는 것입니다. 그렇기 때문에 일주일에 두 번만 "멍청한"전화 만 충전하면됩니다. 특히 손에 들어 있지 않을 때는 실제로 많은 일을하지 않습니다. 그러나 스마트 폰은 많은 일을해야합니다.
백그라운드 작업을 종료하면 배터리에 좋지만 스마트 폰이 멍청 해집니다.
Google은 적극적으로 작업을 수행하지 않지만 향후 필요할 수있는 앱을 '휴면'상태로 만드는 시스템을 보유하고 있습니다. 배터리를 소모하지 않고 화면이 꺼진 상태에서 걸음 수를 추적하거나 수면을 모니터링하거나 음악 플레이어처럼 행동 할 수있는 전화를 갖도록 많은 일 (좋은 일, 나쁜 일)을 수행했습니다.. Play 스토어의 모든 앱에서 일관성을 얻을 수 있도록 이러한 방법을 사용하고 규칙을 준수해야합니다.
Dontkillmyapp 의 목록에서 Nokia가 여기에서 사용할 예제이지만 위반자 목록에는 OnePlus, Sony 및 Samsung도 포함됩니다. Google 자체조차도 앱이 "Dozed"를 면제받는 것을 어렵게 만듭니다. Nokia는 회사에서 Android Oreo 이상을 실행하는 모든 휴대 전화에 앱이 포함되어있어 화면이 꺼진 후 20 분마다 모든 백그라운드 프로세스를 종료합니다. 즉, 피트니스 앱은 작동하지 않지만 Android P를 사용하는 경우 알람이 울리지 않습니다.
스마트 폰이 똑똑해지지 않는 지점까지 어떻게 도달 했습니까? 우리는 더 긴 배터리 수명을 요구했고 전화를 만드는 회사들도 우리에게 그것을 제공하기 위해 나쁜 결정을하고 있습니다. 휴대 전화 제조업체가 배터리 수명에 큰 영향을 미칠 수있는 일을 Android에 할 수있는 일은 많지 않습니다. 수행 할 수 있는 작업 중 하나는 살아있을 필요가없는 앱을 종료하는 것입니다. 사망 한 앱 중 하나가 계속 살아남 아야 할 때 의도 한대로 작동하지 않습니다.
구글은 클램프를 강화해야
나는 이것을 말하는 것이 싫어. 안드로이드는 몇 년 동안 구글이 아닌 회사들에 의해 놀라운 발전을 보인 오픈 소스 프로젝트입니다. 안드로이드를 사용하는 회사는 자신이 원하는 것을하고 모든 한계를 뛰어 넘어 더 나은 것을 만들어야합니다. 그러나 우리는 다시 Play 스토어에서 앱의 일관성으로 돌아갑니다.
이와 같은 문제를 알고 이해하는 유형의 사용자를 포함하여 사용자는 더 가치가 있습니다. Google은 스토어의 앱과 관련하여 이러한 일이 발생하도록하고이를 위해 필요한 모든 것을 변경하고 시행해야합니다. 사용자의 관여없이 무엇이든 할 수 있으며, 회사의 규모가 크거나 전화 판매량에 관계없이 일관되게 수행해야합니다.
우리는 그럴 자격이 있습니다.