android源码中有很多@hide标记的api,这些api默认是不对外开放的,app是访问不到的。
我在修改android_root/packages/apps/Email下的文件,就遇到了不能访问到@hide api 的问题。
解决方法: 找到你app工程下的Android.mk , 找到LOCAL_SDK_VERSION:=current 这一行,然后注释掉,再编译就可以通过了,至于原理是什么,请自己去android_root/build 下查找make系统是如何处理的。
以上系引用
我的问题是
在framework/base/core/java里添加了几个*.aidl
但是packages/apps下的应用找不到其符号
我的Android.mk是
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-java-files-under) \
src/com/android/music/IMediaPlaybackService.aidl
LOCAL_PACKAGE_NAME := Music
#LOCAL_SDK_VERSION := current
LOCAL_PROGUARD_FLAG_FILES := proguard.flags
include $(BUILD_PACKAGE)
# Use the folloing include to make our test apk.
include $(call all-makefiles-under,$(LOCAL_PATH))
其中把LOCAL_SDK_VERSION := current就OK了,我估计原因和以上引用的原因一样
分享到:
相关推荐
AIDL是一种接口定义语言,它允许你在Android应用之间定义接口,以实现进程间的通信(IPC)。当你在服务中定义一个AIDL接口,并在客户端调用这个接口时,系统会自动生成相应的 Binder 类,以处理跨进程的调用。 接...
1. **AIDL简介**:AIDL是Android提供的接口定义语言,用于处理Android应用间的跨进程通信(IPC, Inter-Process Communication)。通过AIDL,应用可以暴露一部分功能给其他应用调用,就像Java中的接口一样。 2. **...
在Android系统中,多进程通信(IPC,Inter-Process Communication)是实现不同应用...正确理解和使用AIDL能够帮助开发者构建健壮的、具有扩展性的Android应用。在实际开发中,应结合具体需求选择合适的多进程通信方式。
Android应用程序默认运行在一个主线程中,也称为UI线程,负责处理用户交互和绘制界面。然而,复杂的计算任务或长时间的操作如果在主线程执行,会阻塞UI更新,导致应用无响应(ANR)。为了解决这个问题,Android引入...
这个压缩包“安卓AIDL相关-androidstudio下使用aidl接口传递自定义对象.rar”提供了关于如何在Android Studio环境下利用AIDL来传递自定义对象的示例和学习材料。 首先,理解AIDL的基本概念非常重要。AIDL定义了一种...
总结起来,"apk大小AIDL接口"这个主题涵盖了Android应用的APK大小计算方法以及使用AIDL进行进程间通信的技术。通过AIDL,我们可以创建一个服务,该服务暴露一个接口,客户端可以调用该接口获取APK的大小信息。这种...
本示例"android AidlDemo(简单aidl的例子)"将带领我们深入理解如何在Android应用中使用AIDL。 1. **AIDL的基本概念** - AIDL是一种接口定义语言,它的主要作用是让不同的Android进程能够安全、高效地进行通信。 -...
**Android AIDL(Android Interface Definition Language)详解** 在Android系统中,进程间的通信(IPC, Inter-Process Communication)是...掌握AIDL的使用,对于开发大型的、需要多进程协作的Android应用至关重要。
Android AIDL(Android Interface Definition Language)是一种基于接口定义语言,用于定义 Android 应用程序之间的接口。AIDL 文件是用于定义服务端和客户端之间的接口,用于实现远程过程调用(RPC)。但是, 当...
而AIDL(Android Interface Definition Language)是Android系统提供的一种接口定义语言,用于处理进程间通信(IPC, Inter-Process Communication)。当需要在第三方应用中与WPS Office进行交互时,AIDL就成为了一个...
在Android系统中,进程间通信(IPC,Inter-Process Communication)是实现不同应用程序之间数据交换的关键技术。Android Aidl(Android Interface Definition ...理解和掌握Aidl对于开发复杂的Android应用至关重要。
在Android开发中,AIDL(Android Interface Definition Language)是一种强大的工具,用于实现进程间通信(IPC,Inter-...通过深入理解并熟练运用这个技术,开发者可以构建更加高效、稳定且模块化的Android应用。
如果XXX.aidl引用了一个java下的model例如引用了a.b.c.Model; 则需要在XXX.aidl文件中声明import a.b.c.Model;全路径。 并且创建另一个文件Model.aidl 在Model.aidl文件中声明以下内容 package xxxx包名称; ...
4. **导入语句**:如果接口需要引用其他AIDL文件中的接口或数据类型,可以使用`import`语句导入。 **AIDL的工作原理** 1. **编译过程**:当AIDL文件被编译时,Android构建系统会生成对应的Java代码。对于服务端,...
在这个"android_aidl例子"中,我们有两个项目:21_阿里支付系统和22_LoL游戏,它们都利用了AIDL来解决跨应用交互的问题。 首先,让我们深入理解AIDL的基本概念。AIDL本质上是定义接口的语法,类似于Java中的接口,...
Android编译系统会自动将.AIDL文件转换为相应的Java接口和Binder类,这样服务端和客户端就可以分别实现和引用这些接口。 3. **服务端实现**: 在服务端,你需要实现`IMyService`接口,并在Service中注册这个实现...
在Android应用开发中,当需要在不同的应用程序组件之间进行数据交换或者服务调用时,AIDL就显得尤为重要。通过AIDL,开发者可以定义接口,使得一个进程可以调用另一个进程中对象的方法,就像它们在同一进程中一样。 ...
Android AIDL(Android Interface Definition ...通过以上讲解,你应该对AIDL有了深入的理解,能够创建和使用AIDL接口实现Android应用的进程间通信。实践中,灵活运用AIDL可以极大地提升应用的功能性和可扩展性。
在Android应用开发中,AIDL(Android Interface Definition Language)是一种强大的工具,用于实现跨进程通信(IPC,Inter-Process Communication)。当我们需要在一个Activity中调用另一个进程中服务的方法时,AIDL...
AIDL允许我们在不同的Android应用程序组件之间定义接口,使得它们可以相互通信,即使这些组件在不同的进程中运行。 **AIDL的基本概念** 1. **接口定义**: AIDL文件本质上是定义了一个接口,其中包含了方法声明。这...