AIDL引用报错
这是bean对象 实现了parcelable
package com.example.stepcountapp.beans;
import android.os.Parcel;
import android.os.Parcelable;
public class ChartViewBean implements android.os.Parcelable {
private int[] arrayData = new int[1440];
private int index = 0;
protected ChartViewBean(Parcel in) {
arrayData = in.createIntArray();
index = in.readInt();
}
public static final Creator<ChartViewBean> CREATOR = new Creator<ChartViewBean>() {
@Override
public ChartViewBean createFromParcel(Parcel in) {
return new ChartViewBean(in);
}
@Override
public ChartViewBean[] newArray(int size) {
return new ChartViewBean[size];
}
};
public int[] getArrayData() {
return arrayData;
}
public void setArrayData(int[] arrayData) {
this.arrayData = arrayData;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeIntArray(arrayData);
parcel.writeInt(index); //写入的顺序和构造方法里读取的顺序必须一致
}
}这是与bean对象同名的aidl文件

这是aidl文件位置及代码
// IMyAidlInterface.aidl
package com.example.stepcountapp.service;
import com.example.stepcountapp.beans.ChartViewBean;
// Declare any non-default types here with import statements
interface IMyAidlInterface {
//获取计步器步数
int getStepCount();
//重置计步器步数
void resetCount();
//开始计步
void startStepCount();
//停止计步
void stopStepCount();
//获取消耗的卡路里
double getCalorie();
//获取走路的距离
double getDistance();
//保存数据
void saveData();
//设置传感器敏感度
void setSensitivity(float sensitivity);
//获取传感器敏感度
double getSensitivity();
//获取采样时间
int getInterval();
//设置采样时间
void setInterval(int interval);
//获取时间戳
long getStartTimeStamp();
//获取服务运行状态
int getServiceStatus();
//获取图表数据
ChartViewBean getChartData();
}这是报的错



不添加 ChartViewBean getChartData(); 这一行代码便没有问题 添加了之后 在service中引用的时候也不会实现getChartData()方法 并且rebuild就会报错
8
收起
正在回答 回答被采纳积分+1
1回答
好帮手慕雪
2019-09-29 14:06:05
你得放在aidl目录下哦。

同学也可以参见,上一节课中的教辅 《Android之AIDL定义规则.pdf》
祝:学习愉快
3.Android 高级应用与Kotlin综合实战
- 参与学习 人
- 提交作业 116 份
- 解答问题 1012 个
本阶段是提升项目经验的必备,除Android开发的高级控件,还有Android官方大力推荐的开发语言Kotlin,未来Android发展的方向,最后使用Kotlin来开发热门电商项目。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星