ANDROID APP
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
292 บทที่ 11 เทคนิคขั้นสูงสำาหรับพัฒนาแอพบนแอนดรอยด์<br />
หลังจากที่เซอร์วิสเชื่อมโยงกันแล้ว onServiceConnected ก็จะเรียกฟังก์ชั่นที่ต้องการใช้งาน<br />
และส่งผ่านค่า IBinder ไปยังอินสแตนซ์ IAdditionService ซึ่งแอคทิวิตี้ rpc ก็จะสามารถเรียก<br />
ใช้เมธอด factorial โดยแสดงผลลัพธ์การทำงานเหมือนในรูปที่ 11.3<br />
ชุดคำสั่งที่ 11.11 src/com/cookbook/advance/rpc/rpc.java<br />
package com.cookbook.advance.rpc;<br />
import android.app.Activity;<br />
import android.content.ComponentName;<br />
import android.content.Context;<br />
import android.content.Intent;<br />
import android.content.ServiceConnection;<br />
import android.os.Bundle;<br />
import android.os.IBinder;<br />
import android.os.RemoteException;<br />
import android.view.View;<br />
import android.view.View.OnClickListener;<br />
import android.widget.Button;<br />
import android.widget.EditText;<br />
import android.widget.TextView;<br />
import android.widget.Toast;<br />
public class rpc extends Activity {<br />
IAdditionService service;<br />
myServiceConnection connection;<br />
class myServiceConnection implements ServiceConnection {<br />
public void onServiceConnected(ComponentName name,<br />
IBinder boundService) {<br />
service = IAdditionService.Stub.asInterface((IBinder) boundService);<br />
Toast.makeText(rpc.this, "Service connected", Toast.LENGTH_SHORT)<br />
.show();<br />
}<br />
public void onServiceDisconnected(ComponentName name) {<br />
service = null;<br />
Toast.makeText(rpc.this, "Service disconnected", Toast.LENGTH_SHORT)<br />
.show();<br />
}<br />
}