2011-11-08 3 views
3

나는 안드로이드에서 응용 프로그램의 최근 출시 시간을 알고 싶습니까?Android에서 앱의 최근 출시 시간을 어떻게 확인할 수 있습니까?

+0

는 여기를 참조하십시오 http://stackoverflow.com/questions/2324847/launch-time-of-an-app –

+0

친애 처음이 StackOverflow의 질문을 통해 이동 : http://stackoverflow.com/faq#dontask –

+0

친애하는 질문을하지 마십시오 중복 질문 그렇지 않으면 그것을 플래그 또는 투표 이런 종류의 질문에 대한 닫습니다. –

답변

1

응용 프로그램의 주 활동 onCreate에서 시스템 시간을 기록 할 수 있습니다. 이 시간은 클래스 수준 필드에서 설정하고 응용 프로그램의 다른 곳에서 액세스 할 수 있습니다. 또한 onResume 유사한 변수 (..) 등

public class MainActivity extends Activity { 
    long launchTime; 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     launchTime = System.currentTimeMillis(); 
     .... 
    } 
} 
+0

내 응용 프로그램에서 다른 응용 프로그램의 최근 출시를 알고 싶습니다. 가능합니까? – raj

0

당신은 실행중인 응용 프로그램을 모두 추적하는 STICKY 서비스를 만들 수 있습니다 할 수있는 최선을 가질 수있다.

@Override 
public int onStartCommand(Intent intent, int flags, int startId) 
{ 

    Timer timer = new Timer(); 
    timer.scheduleAtFixedRate(new TimerTask() { 

     public void run() 
     { 
      final ActivityManager activityManager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE); 
      final List<RunningTaskInfo> services = activityManager.getRunningTasks(Integer.MAX_VALUE); 
       for (int i = 0; i < services.size(); i++) { 
        if(!stalkList.contains(services.get(i).baseActivity.getPackageName())) 
        { 
          // you may store the time here 
          stalkList.add(services.get(i).baseActivity.getPackageName()); 
        } 
       } 

       List<RunningAppProcessInfo> procInfos = activityManager.getRunningAppProcesses(); 
       for(int i = 0; i < procInfos.size(); i++) { 

        ArrayList<String> runningPkgs = new ArrayList<String>(Arrays.asList(procInfos.get(i).pkgList)); 

        Collection diff = subtractSets(runningPkgs, stalkList); 

        if(diff != null) 
        { 
         stalkList.removeAll(diff); 
        } 
       } 


     } 
    }, 20000, 6000); // every 6 seconds 


    return START_STICKY; 
} 
관련 문제