怎么在非activity类里获取intent?

qq_37028558 2016-12-13 05:18:40


通过activity inten打开这个Qhbservice继承AccessibilityService,怎么在Qhbservice类里获取intent,然后获取传递的参数?
,我真实的目的是想把activity xml编辑框控件内容获取,然后怎么能传递到Qhbservice?
...全文
342 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_37028558 2016-12-13
  • 打赏
  • 举报
回复
引用 7 楼 ink_s 的回复:
[quote=引用 5 楼 qq_37028558 的回复:] [quote=引用 1 楼 xiaohanluo 的回复:] 归根结底它还是一个service,是service就有办法。 1. 如果使用startService启动的服务,在onStartCommand(Intent intent, int flags, int startId)方法中有传递过来的intent 2. 如果使用bindService把您的个服务,在onBind(Intent intent)方法中有传递过来的intent 完美。
第二点具体点??,对于我现在的情况具体怎么弄[/quote]
/*	绑定时执行*/
	@Override
	public IBinder onBind(Intent intent) {
		Log.d(TAG, "onBind");
		return binder;
	}
	/*只在创建时执行一次*/
	@Override
	public void onCreate() {
		super.onCreate();
		Log.d(TAG, "onCreate");
	}
	/*断开绑定或者stopService时执行*/
	@Override
	public void onDestroy() {
		super.onDestroy();
		Log.d(TAG, "onDestroy");
	}

	 /* 当内存不够时执行改方法 */
	 @Override
	 public void onLowMemory() {
	 super.onLowMemory();
	 onDestroy();// 注销该service
	 }

	/* 当从新尝试绑定时执行 */
	@Override
	public void onRebind(Intent intent) {
		super.onRebind(intent);
		Log.d(TAG, "onRebind");
	}

	@Override
	public void onStart(Intent intent, int startId) {
		super.onStart(intent, startId);
		Log.d(TAG, "onStart");
	}

	/* ,每次startService都会执行该方法,而改方法执行后会自动执行onStart()方法 */
	@Override
	public int onStartCommand(Intent intent, int flags, int startId) {
		Log.d(TAG, "onStartCommand-->flags=" + flags + "  startId=" + startId);
		
		return super.onStartCommand(intent, flags, startId);
	}
	/*断开绑定时执行*/
	@Override
	public boolean onUnbind(Intent intent) {
		Log.d(TAG, "onUnbind");
		return super.onUnbind(intent);
	}
这么多方法 不都是要传递intent的嘛 你要用这个服务肯定要传intent的啊 要不你怎么用服务呢 [/quote] protected void onServiceConnected() { public void onAccessibilityEvent(AccessibilityEvent accessibilityEvent) { public void onInterrupt() 我就用了这几个重写方法,没有intent
qq_37028558 2016-12-13
  • 打赏
  • 举报
回复
引用 7 楼 ink_s 的回复:
[quote=引用 5 楼 qq_37028558 的回复:] [quote=引用 1 楼 xiaohanluo 的回复:] 归根结底它还是一个service,是service就有办法。 1. 如果使用startService启动的服务,在onStartCommand(Intent intent, int flags, int startId)方法中有传递过来的intent 2. 如果使用bindService把您的个服务,在onBind(Intent intent)方法中有传递过来的intent 完美。
第二点具体点??,对于我现在的情况具体怎么弄[/quote]
/*	绑定时执行*/
	@Override
	public IBinder onBind(Intent intent) {
		Log.d(TAG, "onBind");
		return binder;
	}
	/*只在创建时执行一次*/
	@Override
	public void onCreate() {
		super.onCreate();
		Log.d(TAG, "onCreate");
	}
	/*断开绑定或者stopService时执行*/
	@Override
	public void onDestroy() {
		super.onDestroy();
		Log.d(TAG, "onDestroy");
	}

	 /* 当内存不够时执行改方法 */
	 @Override
	 public void onLowMemory() {
	 super.onLowMemory();
	 onDestroy();// 注销该service
	 }

	/* 当从新尝试绑定时执行 */
	@Override
	public void onRebind(Intent intent) {
		super.onRebind(intent);
		Log.d(TAG, "onRebind");
	}

	@Override
	public void onStart(Intent intent, int startId) {
		super.onStart(intent, startId);
		Log.d(TAG, "onStart");
	}

	/* ,每次startService都会执行该方法,而改方法执行后会自动执行onStart()方法 */
	@Override
	public int onStartCommand(Intent intent, int flags, int startId) {
		Log.d(TAG, "onStartCommand-->flags=" + flags + "  startId=" + startId);
		
		return super.onStartCommand(intent, flags, startId);
	}
	/*断开绑定时执行*/
	@Override
	public boolean onUnbind(Intent intent) {
		Log.d(TAG, "onUnbind");
		return super.onUnbind(intent);
	}
这么多方法 不都是要传递intent的嘛 你要用这个服务肯定要传intent的啊 要不你怎么用服务呢 [/quote] 我打了onBind之类的都没有提示可以重写,还有我是用startActivity打开AccessibilityService服务的?这种情况该怎么弄
ink_s 2016-12-13
  • 打赏
  • 举报
回复
onBind(Intent intent) onStart(Intent intent, int startId) onRebind(Intent intent)
ink_s 2016-12-13
  • 打赏
  • 举报
回复
引用 5 楼 qq_37028558 的回复:
[quote=引用 1 楼 xiaohanluo 的回复:] 归根结底它还是一个service,是service就有办法。 1. 如果使用startService启动的服务,在onStartCommand(Intent intent, int flags, int startId)方法中有传递过来的intent 2. 如果使用bindService把您的个服务,在onBind(Intent intent)方法中有传递过来的intent 完美。
第二点具体点??,对于我现在的情况具体怎么弄[/quote]
/*	绑定时执行*/
	@Override
	public IBinder onBind(Intent intent) {
		Log.d(TAG, "onBind");
		return binder;
	}
	/*只在创建时执行一次*/
	@Override
	public void onCreate() {
		super.onCreate();
		Log.d(TAG, "onCreate");
	}
	/*断开绑定或者stopService时执行*/
	@Override
	public void onDestroy() {
		super.onDestroy();
		Log.d(TAG, "onDestroy");
	}

	 /* 当内存不够时执行改方法 */
	 @Override
	 public void onLowMemory() {
	 super.onLowMemory();
	 onDestroy();// 注销该service
	 }

	/* 当从新尝试绑定时执行 */
	@Override
	public void onRebind(Intent intent) {
		super.onRebind(intent);
		Log.d(TAG, "onRebind");
	}

	@Override
	public void onStart(Intent intent, int startId) {
		super.onStart(intent, startId);
		Log.d(TAG, "onStart");
	}

	/* ,每次startService都会执行该方法,而改方法执行后会自动执行onStart()方法 */
	@Override
	public int onStartCommand(Intent intent, int flags, int startId) {
		Log.d(TAG, "onStartCommand-->flags=" + flags + "  startId=" + startId);
		
		return super.onStartCommand(intent, flags, startId);
	}
	/*断开绑定时执行*/
	@Override
	public boolean onUnbind(Intent intent) {
		Log.d(TAG, "onUnbind");
		return super.onUnbind(intent);
	}
这么多方法 不都是要传递intent的嘛 你要用这个服务肯定要传intent的啊 要不你怎么用服务呢
王三的猫阿德 2016-12-13
  • 打赏
  • 举报
回复
引用 5 楼 qq_37028558 的回复:
[quote=引用 1 楼 xiaohanluo 的回复:] 归根结底它还是一个service,是service就有办法。 1. 如果使用startService启动的服务,在onStartCommand(Intent intent, int flags, int startId)方法中有传递过来的intent 2. 如果使用bindService把您的个服务,在onBind(Intent intent)方法中有传递过来的intent 完美。
第二点具体点??,对于我现在的情况具体怎么弄[/quote] 查一下service使用方法就知道了,其实就是启动service的问题。
qq_37028558 2016-12-13
  • 打赏
  • 举报
回复
引用 1 楼 xiaohanluo 的回复:
归根结底它还是一个service,是service就有办法。 1. 如果使用startService启动的服务,在onStartCommand(Intent intent, int flags, int startId)方法中有传递过来的intent 2. 如果使用bindService把您的个服务,在onBind(Intent intent)方法中有传递过来的intent 完美。
第二点具体点??,对于我现在的情况具体怎么弄
王三的猫阿德 2016-12-13
  • 打赏
  • 举报
回复
引用 3 楼 ink_s 的回复:
[quote=引用 2 楼 xiaohanluo 的回复:] 擦,有错别字,不完美。。。。
专门回去找了下错字 哈哈 还有那个板砖是谁丢的 [/quote] 不知道,回答的答案自己不能改很难受。
ink_s 2016-12-13
  • 打赏
  • 举报
回复
引用 2 楼 xiaohanluo 的回复:
擦,有错别字,不完美。。。。
专门回去找了下错字 哈哈 还有那个板砖是谁丢的
王三的猫阿德 2016-12-13
  • 打赏
  • 举报
回复
擦,有错别字,不完美。。。。
王三的猫阿德 2016-12-13
  • 打赏
  • 举报
回复
归根结底它还是一个service,是service就有办法。 1. 如果使用startService启动的服务,在onStartCommand(Intent intent, int flags, int startId)方法中有传递过来的intent 2. 如果使用bindService把您的个服务,在onBind(Intent intent)方法中有传递过来的intent 完美。
内容概要:本文提出了一种基于变异粒子群算法的主动配电网故障恢复策略,并提供了完整的Matlab代码实现。该策略针对配电网发生故障后恢复供电的问题,通过引入变异机制对传统粒子群算法(PSO)进行改进,显著增强了算法在复杂多维搜索空间中的全局寻优能力与收敛稳定性,有效避免了早熟收敛问题。研究构建了一个综合考虑网络拓扑连通性、负荷优先级、分布式电源接入能力以及运行安全约束的多目标优化模型,旨在最小化停电损失、减少开关操作次数并改善系统电压水平。通过标准测试系统进行仿真验证,结果表明所提方法在恢复效率、优化精度和鲁棒性方面均优于传统算法,具备良好的工程应用前景。; 适合人群:具备电力系统分析基础和Matlab编程能力的研究生、科研人员及电力行业相关工程技术人员。; 使用场景及目标:①应用于主动配电网在故障隔离后的快速供电恢复决策;②为智能优化算法在电力系统重构与应急调度中的应用研究提供参考范例;③帮助深入理解改进型群体智能算法的设计思路、多目标建模方法及其在实际电力工程问题中的实现流程。; 阅读建议:在阅读过程中应重点剖析故障恢复问题的数学建模过程、变异策略的设计原理及其对算法性能的影响机制,建议结合文中的仿真案例,动手调试Matlab代码,复现关键实验结果,以深化对算法实现细节与工程应用场景的理解。

80,492

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧