问题:怎么令自己的Activity知道MediaScannerService服务运行完了?
或者:怎么令自己的Activity知道MediaScannerService是否正在运行?详细情况:我知道,在底层有一个MediaScannerService服务.可以通过广播机制,在启动它进行扫描工作.我用如下代码来启动它进行扫描:
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+Environment.getExternalStorageDirectory())));经过查看日志,我的确看到它启动了.正在运行...估计过个15秒钟的样子finish.但是怎么令我自己的Activity知道这个服务运行完了?然后我在同contentResolver进行数据获取.
或者:怎么令自己的Activity知道MediaScannerService是否正在运行?详细情况:我知道,在底层有一个MediaScannerService服务.可以通过广播机制,在启动它进行扫描工作.我用如下代码来启动它进行扫描:
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+Environment.getExternalStorageDirectory())));经过查看日志,我的确看到它启动了.正在运行...估计过个15秒钟的样子finish.但是怎么令我自己的Activity知道这个服务运行完了?然后我在同contentResolver进行数据获取.
解决方案 »
- java.lang.IllegalArgumentException: Unknown URI content:
- 使用WebView遇到 singleCursorHandlerTouchEvent -getEditableSupport FASLE 如何解决
- 准备学习Opengl es,没找到好的学习资料,请大家帮忙推荐一些资料吧!
- 求人帮忙做个程序
- 求 关于Google map 无法显示的错误 (Couldn't get connection factory client)
- 修改模拟器hosts文件,push的时候总是出错
- 学习ApiDemo的参考资料
- 读取的文本文件输入到EditText中没了换行
- android studio webview缓存问题
- 气死我了55555555我想弄个隐藏导航栏可是看不懂
- 发个小贴!共享点资料!无需下载分!
- android framework
public class ScanSdReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();
if (Intent.ACTION_MEDIA_SCANNER_STARTED.equals(action))
{
//开始扫描,把你的代码放这里
}
else if (Intent.ACTION_MEDIA_SCANNER_FINISHED.equals(action))
{
//扫描结束,把你的代码放这里
}
}
}