getContext().getContentResolver().notifyChange(sliceUri, observer); observer 一般为null 通过sliceUri 来通知 getContext().getContentResolver().notifyChange(sliceUri, null);
SliceProvider 继承自ContentProvider
构造方法的时候会传入
authorities
public BaseSliceProvider(String authorities, String[] permissions) {super(permissions);mSliceUri = Uri.parse("content://" + authorities + "/"); }
getContext().getContentResolver().notifyChange(sliceUri, null);会触发
onBindSlice
通过 ListBuilder创建
Slice 发送
对方通过SliceLiveData监听
mSliceLiveData = SliceLiveData.fromUri(CardiffSystemUIApplication.getGlobalContext(), UriUtil.getSliceUri(getAction()));
this.mSliceLiveData.observeForever(this);
这里的this 就是监听slice
public void onChanged(Slice slice)
获取slice里面传递的值
另外一端是通过
action.getActionItem().fireActionInternal(context,new Intent().addFlags(Intent.FLAG_RECEIVER_FOREGROUND | 0x01000000));