当前位置: 首页 > news >正文

上海网站建设营销设计logo网站免费奇米

上海网站建设营销,设计logo网站免费奇米,滨海新区网站建设,福永网站设计接上一篇的分析,今天继续 aidl复杂流程封装-CSDN博客 今天的任务就是将代码梳理下放进来 1 项目gradle配置: 需要将对应的代码放到各自的目录下,这里仅贴下关键内容,细节可以下载代码慢慢看 sourceSets { main { manifest.srcFile src/main/And…

接上一篇的分析,今天继续

aidl复杂流程封装-CSDN博客

今天的任务就是将代码梳理下放进来


1 项目gradle配置:


   需要将对应的代码放到各自的目录下,这里仅贴下关键内容,细节可以下载代码慢慢看
    sourceSets {
        main {
            manifest.srcFile 'src/main/AndroidManifest.xml'
            java.srcDirs = ['src/main/java']
            aidl.srcDirs = ['src/main/aidl']
            res.srcDirs = ['src/main/res']
            assets.srcDirs = ['assets']
        }

        local {
            java.srcDirs = ['src/local/java']
        }

        remote {
            java.srcDirs = ['src/remote/java']
        }
    }

    flavorDimensions "sdk"
    productFlavors {
        local {
            dimension "sdk"
        }

        remote {
            dimension "sdk"
        }
    }


2 aidl相关文件


  1 客户端的回调接口:


interface ICallback {
    void received(String params, in Bundle bundle);
}

 2 aidl通信接口:
interface IServiceBinder {int register(int version, String caller, ICallback callback);void unregister(String caller, ICallback callback);String received(String params, in Bundle bundle);
}

3 服务端(本地)代码


  先看下对服务类的封装:增加服务端通知消息的入栈异步处理,防止服务端卡顿
  (由于看板信息,播报信息,路况信息等数据频繁,需放入单独线程或线程池处理)

public abstract class AsynService extends Service {protected static final String TAG = "AidlControl-AsynService";protected WorkThread worker;public void onCreate() {super.onCreate();Log.e(TAG, "onCreate: ");if (this.worker == null || !this.worker.isRunning()) {this.worker = new WorkThread();this.worker.start();}}public void onDestroy() {super.onDestroy();Log.e(TAG, "onDestroy: ");if (this.worker != null && this.worker.isRunning()) {this.worker.interrupt();this.worker = null;}}protected String getRequestAuthor(String params) {String requestAuthor = null;try {JSONObject jsonObject = new JSONObject(params);if (jsonObject.has(SDKConstants.KEY_CLIENT_REQUEST_AUTHOR)) {requestAuthor = jsonObject.optString(SDKConstants.KEY_CLIENT_REQUEST_AUTHOR);}} catch (JSONException e) {Log.e(TAG, "getRequestAuthor: ", e);}return requestAuthor;}protected void offerReq(JsonProtocolManager.Message message) {this.worker.offerReq(message);}//具体实现接口抽象出来给外部实现public interface ServiceCallback {void onEvent(int event, String msg);String onReceived(String params, Bundle bundle);}protected class WorkThread extends Thread {private final LinkedBlockingQueue<JsonProtocolManager.Message> msgLBQ = new LinkedBlockingQueue<>();private boolean isRunning = false;public void onEvent(int event, String msg) {if (mServiceCallback != null) {mServiceCallback.onEvent(event, msg);}}public void offerReq(JsonProtocolManager.Message message) {this.msgLBQ.offer(message);}public void run() {this.isRunning = true;while (this.isRunning) {Log.e(TAG, "running: ");try {JsonProtocolManager.Message msg = this.msgLBQ.take();if(!AsynService.this.send(msg)){//msgLBQ.offer(msg);}} catch (Exception e) {e.printStackTrace();}}Log.e(TAG, "running over: ");}boolean isRunning() {return this.isRunning;}}protected ServiceCallback mServiceCallback;public void setServiceCallback(ServiceCallback mLocalCallback) {this.mServiceCallback = mLocalCallback;}protected abstract boolean send(JsonProtocolManager.Message message);
}

  接下来就是具体service的实现类

public class AidlService extends AsynService {private sta
http://www.yayakq.cn/news/729676/

相关文章:

  • 网站缓存优化怎么做网站管理员可控的关键节点
  • 做网站哪家便宜厦门大连网站推广招聘
  • 班玛县网站建设公司视频库网站建设
  • 企业seo整站优化方案WordPress实现扫码登录
  • xrea免费 wordpress 加速网站优化代码
  • 免费申请电子邮箱上海seo网站建设
  • 做网站的公司主营成本应该写啥无锡哪里做网站好
  • 有哪些做的好的小众网站建筑方案设计步骤
  • 网站建设项目及费用中国建设监理企业协会网站
  • 组建网站 多少钱湛江赤坎孵化器网站建设招聘
  • 自助建站基础工作主要包括()和别人做网站接单赚钱
  • 如皋网站制作做内网网站教程
  • html5网站 欣赏哪个网站课件做的比较好
  • 哪个网站可以查公司注册信息六间房
  • 怎么做p2p的网站网站建设维护升级
  • 贵阳做网站找哪家好liunix下搭建wordpress
  • net网站开发游戏网站服务器租用
  • 使用php如何做购物网站基金网站建设需求书
  • 奉贤庄行网站建设wordpress发布产品
  • 基础集团网站建设建设银行网站打不开别的网站可以
  • 个人域名可以备案企业网站吗财务管理做的好的门户网站
  • 企业网站设计布局方式游戏服务器
  • 西安学校网站建设哪家专业绥化做网站
  • 贵阳网站开发谁家做的好谷歌seo怎么做的
  • 网站开发swf素材装修123网
  • 五棵松网站建设网络营销推广案例
  • 上海优化网站价格城乡建设部注册建筑师网站
  • 网站500m空间价格织梦网站修改教程视频教程
  • 东营网站建设哪家更好wordpress移动端发表失败
  • 北京做网站的大公司有哪些河间网站网站建设