안드로이드 전화에서 열린 패키지 (앱)의 이름을 축하하고 싶습니다. 다시 다른 앱을 열면 특정 응용 프로그램의 패키지 이름은 토스트. 는 또한 나는이 모든 당신의 도움에 매우 감사 할 것입니다 서비스 를 사용하여 작업을 수행하고 싶습니다.열린 앱 패키지 이름을 축하하는 방법 (패키지 이름을 열면 토스트해야 함)
0
A
답변
-1
그래서 당신에게 열려있는 모든 앱의 패키지 이름을 표시해야합니다. 먼저 브로드 캐스트 수신기를 만드는 방법을 검색 한 다음 p 이 코드를 사용하십시오.
ActivityManager mgr = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> taskInfo = mgr.getRunningTasks(1);
Log.d("topActivity", "Current Running Activity ::"
+ taskInfo.get(0).topActivity.getClassName());
ComponentName component = taskInfo.get(0).topActivity;
String packageName = component.getPackageName();
Toast.makeText(getApplicationContext(), packageName , Toast.LENGTH_SHORT).show();
하면 매니페스트에이 권한을 추가
uses-permission android:name="android.permission.GET_TASKS"
는 앱이 열리는 경우, 당신이 의도를 만들고 정상 활동이 당신의 배경 스레드에서 변경 될 때를 발사 할 감지하기.
+0
그는 패키지 이름을 얻고 싶습니다. –
+0
고맙습니다. 나는 브로드 캐스트 리시버를 사용하는 방법을 알지 못하는 안드로이드에 대한 새로운 경험을 바탕으로 백그라운드 스레드에서 의도를 생성합니다. 이전 프로그램에서도이 (브로드 캐스트 리시버) 프로그램을 추가 할 수 있습니까? 감사합니다. – Ank
1
를 사용하여 아래의 코드를 사용자의 실행 활동에
public static String PACKAGE_NAME;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
PACKAGE_NAME = getApplicationContext().getPackageName();
Toast.makeText(this, PACKAGE_NAME , Toast.LENGTH_SHORT).show();
}
"토스트 무언가"로 무엇을 의미합니까 –
건배를하는 것을 의미합니까? – Bennyhuo
이 정보가 도움이됩니까? http://stackoverflow.com/questions/2166961/determining-the-current-foreground-application-from-a-background-task-or-service – GoneUp