일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바스크립트
- 소프트웨어공학
- 보안
- 알고리즘
- 사이버보안
- 코딩
- 웹개발
- 인공지능
- 네트워크보안
- 클라우드컴퓨팅
- 데이터분석
- 네트워크
- 데이터과학
- 프로그래밍언어
- 파이썬
- Yes
- 딥러닝
- 버전관리
- I'm Sorry
- 머신러닝
- 소프트웨어
- 빅데이터
- 자료구조
- 데이터구조
- 컴퓨터과학
- 컴퓨터공학
- 2
- 프로그래밍
- 컴퓨터비전
- 데이터베이스
- Today
- Total
스택큐힙리스트
안드로이드 UserManager.isUserAGoat()의 적절한 사용 사례는 무엇인가요? 본문
이 게시물을 개선하고 싶으신가요? 이 질문에 대한 자세한 답변을 제공하세요. 인용과 함께 답변의 정확성을 설명해주세요. 충분한 세부 사항 없이 작성된 답변은 편집되거나 삭제될 수 있습니다.
나는 Android 4.2에서 소개된 새로운 API를 살펴보고 있었다. UserManager 클래스를 볼 때 다음 메소드를 발견했다.
public boolean isUserAGoat()
이 호출을하는 사용자가 순간 이동 대상인지 여부를 확인하는 데 사용됩니다.
이 호출을 만든 사용자가 염소인지 여부를 반환합니다.
이것은 어떻게 그리고 언제 사용해야 할까요?
답변 1
안드로이드 R 업데이트:
안드로이드 R부터, 이 메소드는 항상 false를 반환합니다. 구글은 이것이 염소의 프라이버시를 보호하기 위해 이루어졌다고 말합니다.
/**
* Used to determine whether the user making this call is subject to
* teleportations.
*
*
As of {@link android.os.Build.VERSION_CODES#LOLLIPOP}, this method can
* now automatically identify goats using advanced goat recognition technology.
*
*
As of {@link android.os.Build.VERSION_CODES#R}, this method always returns
* {@code false} in order to protect goat privacy.
*
* @return Returns whether the user making this call is a goat.
*/
public boolean isUserAGoat() {
if (mContext.getApplicationInfo().targetSdkVersion >= Build.VERSION_CODES.R) {
return false;
}
return mContext.getPackageManager()
.isPackageAvailable(com.coffeestainstudios.goatsimulator);
}
이전 답변:
그들의 source로부터, API 21에서 변경될 때까지 반환되는 방법.
/**
* Used to determine whether the user making this call is subject to
* teleportations.
* @return whether the user making this call is a goat
*/
public boolean isUserAGoat() {
return false;
}
개발자로써 우리에게는 그 방법이 실제로 유용하지 않은 것 같습니다. 누군가가 그것이 Easter egg 일 수도 있다고 이전에 언급한 적이 있습니다.
API 21에서는 구현 방식이 변경되어 패키지 com.coffeestainstudios.goatsimulator이(가) 설치된 앱이 있는지 확인합니다.
/**
* Used to determine whether the user making this call is subject to
* teleportations.
*
*
As of {@link android.os.Build.VERSION_CODES#LOLLIPOP}, this method can
* now automatically identify goats using advanced goat recognition technology.
*
* @return Returns true if the user making this call is a goat.
*/
public boolean isUserAGoat() {
return mContext.getPackageManager()
.isPackageAvailable(com.coffeestainstudios.goatsimulator);
}
이것은 source와 change입니다.
답변 2
안드로이드 UserManager.isUserAGoat()의 적절한 사용 사례는 무엇일까요?
안드로이드 UserManager.isUserAGoat()은 실제로는 조금 유치한 메소드입니다. 이 메소드는 현재 실행 중인 사용자가 염소인지 여부를 확인합니다. 이 메소드는 대부분의 개발자에게 아무 의미가 없을 것입니다. 그러나 놀림거리로 활용하기 위해 만들어졌기 때문에 이 메소드는 일부 커뮤니티에서 인기를 얻었습니다. 하지만 이와 같은 사용은 바람직하지 않으며 안드로이드의 일반적인 사용사례가 아닙니다.
안드로이드 UserManager.isUserAGoat() 메소드를 사용하는 경우는 거의 없습니다. 하지만 만약 이 메소드가 어떤 목적으로 사용된다면 다음과 같은 경우가 있을 수 있습니다.
1. 장난감 앱 또는 유머 앱
유저가 염소인지 아닌지를 알려주는 앱을 만들 수 있습니다. 이는 장난감 앱 또는 유머 앱으로, 대부분의 사용자에게는 의미가 없지만, 유머와 재미를 위해 만든 앱입니다.
2. 테스트 앱
개발자는 UserManager.isUserAGoat() 메소드를 사용하여 안드로이드 디바이스의 사용자 수와 관련된 테스트를 수행할 수 있습니다. 이는 전용 테스트 앱에서, UserManager.isUserAGoat() 메소드를 사용하여 디바이스 사용자 수를 확인함으로써 가능합니다.
3. 테스트용 데이터 생성도구
개발자들은 UserManager.isUserAGoat()와 같은 메소드를 사용하여 테스트용 데이터를 생성할 수도 있습니다. 이를 통해 사용자를 염소로 만들거나, 일부 사용자를 식별하는 데 사용 할 수 있습니다.
위에서 언급한 모든 경우에도, UserManager.isUserAGoat() 메소드는 실제 앱 제작에 큰 영향을 미치지 않습니다. 이는 단순히 장난감으로서의 용도나 개발자 내부 테스트에 사용하는 용도로만 사용됩니다. 그러나, Android UserManager.isUserAGoat() 를 사용하는 앱은 Google Play에서 금지합니다.
결론적으로, UserManager.isUserAGoat() 메소드는 실제 안드로이드 앱에 사용되지 않는 메소드입니다. 이 메소드는 일부 커뮤니티에서 인기를 얻기는 하지만, 일반적인 사용 예에서는 보통 사용되지 않습니다. 따라서 개발자들은 이 메소드를 재미용도, 테스트용도로 사용하는 것이 가장 바람직합니다. 그러나, Google Play에 제출 할 때, 이 메소드를 포함하지 않아야하며, Android 보안 방침 준수를 위해 사용되지 않아야합니다.