onBind方法必须返回MyServiceImpl类的对象实例,否则客户端无法获得服务对象 。(4)在AndroidManifest.xml文件中配置MyService类,代码如下:Java代码: 下面来编写客户端的调用代码 。
首先新建一个Eclipse Android工程(ch08_aidlclient),并将自动生成的IMyService.java文件连同包目录一起复制到ch08_aidlclient工程的src目录中,如图所示 。调用AIDL服务首先要绑定服务,然后才能获得服务对象,代码如下:Java代码:package net.blogjava.mobile;import net.blogjava.mobile.aidl.IMyService; import android.app.Activity; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.ServiceConnection; import android.os.Bundle; import android.os.IBinder; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView;public class Main extends Activity implements OnClickListener { private IMyService myService = null; private Button btnInvokeAIDLService; private Button btnBindAIDLService; private TextView textView; private ServiceConnection serviceConnection = new ServiceConnection() { @Override public void onServiceConnected(ComponentName name, IBinder service) { // 获得服务对象 myService = IMyService.Stub.asInterface(service); btnInvokeAIDLService.setEnabled(true); } @Override public void onServiceDisconnected(ComponentName name) { } }; @Override public void onClick(View view) { switch (view.getId()) { case R.id.btnBindAIDLService: // 绑定AIDL服务 bindService(new Intent("net.blogjava.mobile.aidl.IMyService"), serviceConnection, Context.BIND_AUTO_CREATE); break; case R.id.btnInvokeAIDLService: try { textView.setText(myService.getValue()); // 调用服务端的getValue方法 } catch (Exception e) { } break; } } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btnInvokeAIDLService = (Button) findViewById(R.id.btnInvokeAIDLService); btnBindAIDLService = (Button) findViewById(R.id.btnBindAIDLService); btnInvokeAIDLService.setEnabled(false); textView = (TextView) findViewById(R.id.textview); btnInvokeAIDLService.setOnClickListener(this); btnBindAIDLService.setOnClickListener(this); } 。
6. android怎么将一个文本文件写入pc机 Android 怎样在应用程序中向文件里写入数据?在AndroidManifestmit();
获取 :sp =getPreferences(MODE_PRIVATE);
String result =spmit(); } } Files从这是第二种方法,可以在设备本身的存储设备或者外接的存储设备中创建用于保存数据的文件 。同样在默认的状态下,文件是不能在不同的程序间共享 。写文件:调用Context.openFileOutput()方法根据指定的路径和文件名来创建文件,这个方法会返回一个FileOutputStream对象 。读取文件:调用Context.openFileInput()方法通过制定的路径和文件名来返回一个标准的Java FileInputStream对象 。
(注意:在其它程序中将无法应用相同的路径和文件名来操作文件)另外编译程序之前,在res/raw/tempFile中建立一个static文件,这样可以在程序中通过Resources.openRawResource (R.raw.myDataFile)方法同样返回一个InputStream对象,直接读取文件内容 。Databases在Android API中包括了应用SQLite databases的接口,每个程序所创建的数据库都是私有的,换句话说,程序间无法相互访问对方的数据库 。在程序中创建SQLiteDatabase对象,其中包含了大部分与database交互的方法,例如:读取数据或者管理当前数据 。可以应用SQLiteDatabase和其subClassSQLiteOpenHelper的create()方法来创建新的数据库 。对于SQLitedatabase而言,其强大和方便的功能为Android提供了强有力的存储功能 。特别是存储一些复杂的数据结构,例如:Android特别为通讯录创建了特有的数据类型,其中包含了非常多的子集而且涵盖了大部分的数据类型 “First Name” “Last Name” “PhoneNumber”和“Photo”等 。Android可以通过Sqlite3 database tool来查看指定数据库中表的内容,直接运行SQL命令来快速便捷的直接操作SQLite database 。
- 笨笔顺怎么写的
- 单位租房申请怎么写
- 秋游二年级作文怎么写
- 未来的笔的作文怎么写
- 花甲怎么做简单呢 花甲的做法怎么做
- 淘宝店铺怎么做才有流量 淘宝网店怎么才有流量
- 微信变成黑色怎么调过来 苹果13微信变成黑色怎么调过来
- excel怎么分类汇总 excel怎么分类汇总平均基本工资
- qq怎么改戳一戳内容 QQ怎么改戳一戳
- 什么是干花 什么是干花怎么做