【问题标题】:Start activity did not work for android emulator开始活动不适用于 android 模拟器
【发布时间】:2011-06-06 07:59:15
【问题描述】:

我使用我的自定义实现 tabhost。创建一个新的活动如下:

public class TabsActivityGroup extends ActivityGroup {
  //
  //...
  //
  private void startGroupActivity(String activityID, Intent activityIntent) {
    final LocalActivityManager localActivityManager = getLocalActivityManager();
    Window window = localActivityManager.startActivity(activityID, activityIntent);
    // after call destroy activity window equals null on android 1.6 (emulator). Why?
    // on android 2.2 window not equal null
    if (window != null) {
     View view = window.getDecorView();
     tabsContentFrameLayout.addView(view, new ViewGroup.LayoutParams(
     ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT));
    }
  }
  //
  //...
  //
}

但是在调用销毁活动之后:

 getLocalActivityManager().destroyActivity(className, true);

我正在尝试调用启动活动,但从此代码中获取窗口等于 null:

Window window = localActivityManager.startActivity(activityID, activityIntent);

在具有固件 2.1 (Hero) 和 2.2 (Desire) 的设备上运行良好,但在具有 android 平台的模拟器上无法运行;(

现在我正在研究android平台2.2的源码,想了解为什么window等于null。

我会很高兴得到任何帮助。

临时解决方案:

public static boolean isEmulator(Context context) {                                                                     
 TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);     
 final String deviceId = telephonyManager.getDeviceId();                                                         
 if (deviceId == null) return true;                                                                              
 if (CommonHelper.isNotNull(deviceId) && deviceId.equals(NULL_IMEI)) {return true;} else { return false;}
}

if (!isEmulator(this)) {
     getLocalActivityManager().destroyActivity(className, true);

}

【问题讨论】:

    标签: java android android-activity activitygroup


    【解决方案1】:

    开始活动的调用是否正确?

    我看到startActivity只接受了Intent的一个参数..

    请检查。此外,嵌入 try/catch 以获取异常(如果有)。

    【讨论】:

    猜你喜欢
    • 2013-07-05
    • 1970-01-01
    • 2011-06-17
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    • 2012-02-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多