首页 > 代码库 > 解决:彩信,添加了有效联系人和编辑了主题,按返回键,提示信息存为草稿,但实际未储存

解决:彩信,添加了有效联系人和编辑了主题,按返回键,提示信息存为草稿,但实际未储存

【预置条件】新建彩信添加有效联系人及主题
【测试步骤】新建彩信添加有效联系人及主题,按返回键
【测试结果】提示信息已存为草稿,实际未储存

【预期结果】正常存为草稿

分析:

该Bug是由于清单文件中设置的Activity启动模式引起。原始文件中的启动模式为singleTop:
该启动模式为,当跳转的对象是位于栈顶的activity(应该可以理解为用户眼前所看到的activity)时,程序将不会生成一个新的activity实例,而是直接跳到现存于栈顶的那个activity实例。

google原始代码为:

<activity android:name=".ui.ComposeMessageActivity"
                  android:configChanges="orientation|screenSize|keyboardHidden"
                  android:windowSoftInputMode="stateHidden|adjustResize"
                  android:theme="@style/MmsHoloTheme"
                  android:parentActivityName=".ui.ConversationList"
                  android:launchMode="singleTop" >

修改后:

<activity android:name=".ui.ComposeMessageActivity"
                  android:configChanges="orientation|screenSize|keyboardHidden"
                  android:windowSoftInputMode="stateHidden|adjustResize"
                  android:theme="@style/MmsHoloTheme"
                  android:parentActivityName=".ui.ConversationList"
                  android:launchMode="singleTask" >

该启动模式为只创建一个实例的。在这种模式下,无论跳转的对象是不是位于栈顶的activity,程序都不会生成一个新的实例。