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

网站建设平台还有没有趋势网易企业邮箱登录登录入口

网站建设平台还有没有趋势,网易企业邮箱登录登录入口,珠海建站模板,手机网站背景图尺寸1 App 应用代码一般在开发者的项目目录下,packages/apps/YourApp/,比如app/src/main/java目录下 对于系统应用,源代码可能位于packages/apps/目录下,例如packages/apps/Settings。 用户安装的应用(从Google Play或其…

1 App

应用代码一般在开发者的项目目录下,packages/apps/YourApp/,比如app/src/main/java目录下

对于系统应用,源代码可能位于packages/apps/目录下,例如packages/apps/Settings

用户安装的应用(从Google Play或其他来源安装的APK)位于设备的/data/app/目录

系统应用(预装应用)位于/system/app//system/priv-app/目录

应用在Dalvik或ART虚拟机上运行

直接使用Framework服务

import android.myframeworkservice.IMyFrameworkService;
import android.os.ServiceManager;
import android.os.RemoteException;public class MyActivity extends Activity {private IMyFrameworkService mFrameworkService;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mFrameworkService = IMyFrameworkService.Stub.asInterface(ServiceManager.getService("myframeworkservice"));if (mFrameworkService != null) {try {mFrameworkService.myFrameworkMethod();} catch (RemoteException e) {e.printStackTrace();}}}
}

2 Framework层

Framework服务的源代码主要位于frameworks/base/services/目录

Framework服务的代码编译后成为framework.jar和其他相关JAR文件,位于设备的/system/framework/目录

Framework服务在system_server进程中运行。system_server是由Zygote进程启动的,它包含了大部分系统服务,如ActivityManagerServicePackageManagerService等。

首先增加aidl

// IMyFrameworkService.aidl
package android.myframeworkservice;interface IMyFrameworkService {void myFrameworkMethod();
}

用Java实现

// MyFrameworkService.java
package com.android.server;import android.content.Context;
import android.hardware.myhal.IMyHalService;
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Slog;
import android.myframeworkservice.IMyFrameworkService;
import android.os.ServiceManager;public class MyFrameworkService extends IMyFrameworkService.Stub {private static final String TAG = "MyFrameworkService";private final Context mContext;private final IMyHalService mHalService;public MyFrameworkService(Context context) {mContext = context;mHalService = IMyHalService.Stub.asInterface(ServiceManager.getService("myhalservice"));}@Overridepublic void myFrameworkMethod() throws RemoteException {if (mHalService != null) {mHalService.myHalMethod();} else {Slog.e(TAG, "HAL service not available");}}
}

在system manager中注册

import com.android.server.MyFrameworkService;public class SystemServer {// Existing code...private void startOtherServices() {// Existing code...try {Slog.i("SystemServer", "MyFrameworkService");ServiceManager.addService("myframeworkservice", new MyFrameworkService(context));} catch (Throwable e) {reportWtf("starting MyFrameworkService", e);}// Existing code...}// Existing code...
}

3 HAL层

HAL服务的源代码通常位于hardware/interfaces/vendor/目录

HAL模块通常以共享库(.so文件)的形式存在,位于/vendor/lib/hw//system/lib/hw/目录中。

定义服务

package android.hardware.myhal;interface IMyHalService {void myHalMethod();
}

实现HAL服务,用C++

// MyHalService.cpp
#include <android/hardware/myhal/IMyHalService.h>
#include <hidl/LegacySupport.h>
#include <log/log.h>using android::hardware::myhal::V1_0::IMyHalService;
using android::hardware::configureRpcThreadpool;
using android::hardware::joinRpcThreadpool;
using android::sp;struct MyHalService : public IMyHalService {Return<void> myHalMethod() override {ALOGI("myHalMethod called");return Void();}
};int main() {configureRpcThreadpool(1, true /*callerWillJoin*/);android::sp<IMyHalService> service = new MyHalService();if (service->registerAsService() != android::OK) {ALOGE("Failed to register MyHalService");return 1;}joinRpcThreadpool();return 0;
}

其实HAL也可以不封成AIDL。直接使用JNI,貌似也是可以的,各有利弊。

例子:

https://www.cnblogs.com/linhaostudy/p/12002068.html

http://www.yayakq.cn/news/769110/

相关文章:

  • 站点推广促销莱芜网络推广
  • 辽宁pc网站建设开发竞价推广的本质是什么
  • 小米路由器 做网站网站续费服务商
  • 怎么建设一个国外的网站上海每44秒就有一人死于新冠
  • 易语言怎么做网页网站软件工程系统设计案例
  • 合肥网站 技术支持 上诚科技wordpress个人支付宝
  • 网站拥有者查询北京海淀区信息科技有限公司
  • 百度蜘蛛网站怎么制作一个网站教程
  • 网页加速器免费下载湘潭网站seo公司
  • 邯郸整站优化珠海单位网站建设
  • 网站模版 拓陕西网站开发联系电话
  • 怎么做属于自己的网站在线拼接图片
  • 高台网站建设免费商城网站建站系统
  • asp网站的优点wordpress博客缩略图
  • 做信息图的网站新学校网站建设成果
  • 一个公司做100个网站哪个国家的绘本网站做的好
  • 做打牌的网站怎么办怎么开网店找货源
  • 做一个网站花2万贵吗全国最大工地招工网
  • 罗湖附近公司做网站建设哪家服务周到开网站建设
  • 珠海企业建站模板江苏建设考试网官网
  • 计算机网络 网站开发与设计中文安卓开发工具
  • 建设网站的规则wordpress笑话类模板
  • 做电影网站挣钱西安推广公司无网不胜
  • 西安做网站的公司维护wordpress 七牛加速
  • ui设计参考网站怎么把网站管理系统
  • 百度云服务器做php网站如何推广自己的产品让更多人来买
  • wordpress 移动站插件电脑培训零基础培训班
  • 顺德做网站设计的公司wordpress配置数据库连接
  • 做出口网站什么专业的会做网站
  • 做策划的都上哪些网站搜索资料间备案期间网站可以做竞价吗