由于我能够从Android文档中找到,ContentResolver
将使用内容。
同时,它可以仅用作没有任何ContentProvider
的进程之间的观察者模式实现。
例如为: 应用程序1调用:
getContentResolver().registerContentObserver(MY_OBSERVERS_URI, true, mObserver);
应用程序2调用:
context.getContentResolver().notifyChange(Uri.withAppendedPath(MY_OBSERVERS_URI, "notify change!"), null);
在应用程序2致电后,我可以在onChange()
中收到mObserver
,而不会显示任何ContentProvider
具有MY_OBSERVERS_URI
权限的ContentResolver
。这样就可以将ContentResolver
仅用于Observer(可能它更接近Sub / Pub)模式实现。实际上,在某些情况下,这种方式可能比使用意图更简单。
所以,它可以这样工作,但看起来它不是ContentResolver
的用途,但到目前为止我还没有遇到任何与这种方法有关的问题。
是否有效使用{{1}}?我是否应该期待这种方法在将来的应用程序间通信中遇到一些问题?