WEB开发网
开发学院手机开发Android 开发 Android Activity之间的Inter-process沟通 阅读

Android Activity之间的Inter-process沟通

 2010-06-01 15:47:00 来源:WEB开发网   
核心提示:86. }87. public void onClick(View arg0) {88. finish();89. }90. }其中的指令:ac01.appRef.setData("feedback from Activity_1."); 只有ac01与Activity_1两者都在同一个地址空间(即

86. }

87. public void onClick(View arg0) {

88. finish();

89. }

90. }

其中的指令:ac01.appRef.setData("feedback from Activity_1."); 只有ac01与Activity_1两者都在同一个地址空间(即进程)才会有效。如果将AndroidManifest.xml里的< Activity >叙述修改为:

< activity android:name=".Activity_1" android:process=":remote" >

< intent-filter >

< action android:name="android.intent.action.VIEW" / >

< category android:name="android.intent.category.DEFAULT" / >

< /intent-filter >

< /activity >

其令Activity_1在独立的进行里执行,则上述指令:ac01.appRef.setData("feedback from Activity_1."); 就不对了。

那么,这种跨进程的情形下,该如何沟通呢?

 使用SharedPreference

可以使用:

import android.content.SharedPreferences.Editor;

于是,可在Activity_1里撰写指令如下:

复制到剪贴板 Java代码

1. public class Activity_1 extends Activity implements OnClickListener {

2. private Button btn;

3. @Override

4. public void onCreate(Bundle icicle) {

5. super.onCreate(icicle);

6. …………………(省略)

7. Editor passwdfile = getSharedPreferences("ITEM", 0).edit();

8. passwdfile.putString("ITEM","feedback from Activity_1.");

9. passwdfile.commit();

10. }

11. …………………(省略)

12. }

13.

14. 并且,在ac01里撰写指令如下:

15.

16. public class ac01 extends Activity implements OnClickListener {

17. ………………………

18. @Override

19. public void onCreate(Bundle savedInstanceState) {

20. super.onCreate(savedInstanceState);

21. ………………………

22. }

23. @Override

24. public void onResume(){

上一页  1 2 3 4 5 6 7  下一页

Tags:Android Activity 之间

编辑录入:coldstar [复制链接] [打 印]
赞助商链接