调用了:startActivity(new Intent(android.provider.Settings.ACTION_DATE_SETTINGS);因硬件木有BACK键,所以我接收到广播"android.intent.action.TIME_SET"后,要kill 这个Activity。
有两个想法:1.能不能kill activity?
            2.模拟发送BACK键,但是该方法见网上无数篇,但是依旧不能解决问题。IWindowManager这个class是隐藏,谢谢

解决方案 »

  1.   

    1.android没有开放接口让我们直接的kill activity,但是我们可以自己去实现。用broadcast去做。
      activity定义一个action,收到后,就把自己finish掉。
    2.monkey test中可以发送back key,可以向这个方向找思路。估计是adb 操作。
      

  2.   

    IWindowManager  mWm = IWindowManager.Stub.asInterface(ServiceManager.getService("window"));
    mWm.injectKeyEvent(KeyEvent.KEYCODE_BACK, false); 源码下编译
      

  3.   

    重写public boolean onKeyDown(int keyCode, KeyEvent event) 方法
      

  4.   

    问题解决!
    解决方法:http://blog.csdn.net/zuolongsnail/article/details/6535012
             http://handsomeliuyang.iteye.com/blog/1315283 这两个帖子结合