Android Studio编写AIDL文件后如何实现自动编译生成

 更新时间:2020年03月18日 18:00:46   作者:EdwardChu123  
这篇文章主要介绍了Android Studio编写AIDL文件后如何实现自动编译生成,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在目录src/main 下新建了aidl 文件夹之后,在aidl文件夹中也创建了相同的包路径,

创建AIDL文件

XXX.aidl

如果XXX.aidl引用了一个java下的model例如引用了a.b.c.Model;

则需要在XXX.aidl文件中声明import a.b.c.Model;全路径。

并且创建另一个文件Model.aidl

在Model.aidl文件中声明以下内容

package xxxx包名称;

parcelable Model;

如果编译的时候提示AIDL文件引用的包找不到的话

要在build文件中声明以下内容:

android {
  ...
  sourceSets.main {
    manifest.srcFile 'src/main/AndroidManifest.xml'
    java.srcDirs = ['src/main/java', 'src/main/aidl']
    resources.srcDirs = ['src/main/java', 'src/main/aidl']
    aidl.srcDirs = ['src/main/aidl']
    res.srcDirs = ['src/main/res']
  }
  ...
}

我的内容

Book.aidl

package used.tusdk.pczhu.com.tusdkused;
parcelable Book;

IBookManager.aidl

package used.tusdk.pczhu.com.tusdkused;

import java.util.List;

import used.tusdk.pczhu.com.tusdkused.Book;


interface IBookManager {
  List<Book> getBookList();
  void addBook(in Book book);
}

补充知识:Android studio 创建aidl文件无法生成Java文件或Java文件为空(没有内容)

as创建aidl生成的Java文件为空

在这里mark一下我自己发现的解决方案:

起初,我也搜索了很多篇博客文章,他们的方法还是没有解决我的问题,

他们的解决方法是, build-->rebuild project, 我告诉你他们的这个方法

是解决as根本没有生成aidl对应的Java文件.在我这里的问题有点不一

样,我生成了aidl对应得Java文件,但是这个Java文件是空得,没有代码得

Java文件,我反复尝试了将近两个小时,都没有解决...

经过多次尝试之后,我然后在aidl文件里面写了这样一句代码,生成Java成功

package com.example.date01;

// Declare any non-default types here with import statements

interface IMediaService {

  void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat,
      double aDouble, String aString);

  void hello();
}

我之前一直报错得代码是这样子的

package com.example.date01;

// Declare any non-default types here with import statements

interface IMediaService {

  void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat,
      double aDouble, String aString);

 //开始音乐
  void openAudio(int position);
  //开始播放
  void start();
  //暂停
  void pause();
}

发现有什么区别了没(这是细节)

最后给出解决方案:

问题所在: 带中文注释得aidl文件生成得Java文件为空

解决就是, 把注释去掉或者添加英文注释

不知道这个方法对你们是否有效, 我的as版本是3.5

以上这篇Android Studio编写AIDL文件后如何实现自动编译生成就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Android webView如何输出自定义网页

    Android webView如何输出自定义网页

    这篇文章主要介绍了Android webView如何输出自定义网页,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • Android使用线程更换壁纸

    Android使用线程更换壁纸

    这篇文章主要为大家详细介绍了Android使用线程更换壁纸的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • Android 进度条 ProgressBar的实现代码(隐藏、出现、加载进度)

    Android 进度条 ProgressBar的实现代码(隐藏、出现、加载进度)

    这篇文章主要介绍了Android 进度条 ProgressBar的实现代码 (隐藏、出现、加载进度),代码简单易懂非常不错,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • Android-自定义控件之ListView下拉刷新的实现

    Android-自定义控件之ListView下拉刷新的实现

    本篇文章主要介绍了Android-自定义控件之ListView下拉刷新示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • Android 炫舞漫天飞雪效果图

    Android 炫舞漫天飞雪效果图

    这篇文章主要介绍了Android 炫舞漫天飞雪效果图的相关资料,需要的朋友可以参考下
    2016-01-01
  • Android实现微信朋友圈发本地视频功能

    Android实现微信朋友圈发本地视频功能

    这篇文章主要介绍了Android实现微信朋友圈发本地视频功能的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • Android开发基础实现最简单的视频播放示例

    Android开发基础实现最简单的视频播放示例

    这篇文章主要为大家介绍了Android开发基础实现最简单的视频播放示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Android实现滑动屏幕切换图片

    Android实现滑动屏幕切换图片

    这篇文章主要为大家详细介绍了Android实现滑动屏幕切换图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08
  • Android仿微信录制小视频

    Android仿微信录制小视频

    这篇文章主要为大家详细介绍了Android仿微信录制小视频,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • Android如何实现社交应用中的评论与回复功能详解

    Android如何实现社交应用中的评论与回复功能详解

    目前,各种App的社区或者用户晒照片、发说说的地方,都提供了评论功能,为了更好地学习,自己把这个功能实现了一下,下面这篇文章主要给大家介绍了关于Android如何实现社交应用中的评论与回复功能的相关资料,需要的朋友可以参考下
    2018-07-07

最新评论