android字符驱动,Android 字符驱动#3#应用层调用服务访问字符驱动

创建app的过程省略,直接贴上主要的逻辑代码

package com.jdf.hal.activity;

import android.os.Bundle;

import android.os.RemoteException;

import android.view.View;

import android.widget.TextView;

import com.jdf.android.hal.IHelloService;

import com.jdf.common.BasicActivity;

import com.jdf.hal.R;

public class HalMainActivity extends BasicActivity {

IHelloService helloService;

int value = 0;

TextView retInfo;

TextView lastSetInfo;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_hal_main);

//获取HelloService服务

helloService = IHelloService.Stub.asInterface(android.os.ServiceManager.getService("hello"));

initView();

}

private void initView() {

retInfo = (TextView) findViewById(R.id.ret);

lastSetInfo = (TextView) findViewById(R.id.last_set);

findViewById(R.id.getVal).setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

int val = -1;

try {

//获取驱动的值

val = helloService.getVal();

appendTextInfo("get val from hal:" + val);

} catch (RemoteException e) {

}

}

});

findViewById(R.id.setVal).setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

try {

lastSetInfo.setText("last set val:" + value);

//设置驱动的值

helloService.setVal(value);

value++;

} catch (RemoteException e) {

}

}

});

}

private void setTextInfo(String info) {

retInfo.setText(info);

}

private void appendTextInfo(String info) {

retInfo.append("\n");

retInfo.append(info);

}

}

主要逻辑为:

获取服务->访问接口

IHelloService helloService = IHelloService.Stub.asInterface(android.os.ServiceManager.getService("hello"));

int val = helloService.getVal();

helloService.setVal(value);

app的实际运行效果为

![HalMainActivity]

e2b4c2565827

rKdEbzo.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值