Commit 800f67e4 authored by liuyang's avatar liuyang

APK图片抓取识别及轮播流地址抓取, 分离service和界面,避免程序在后台被杀

#BYLSERVER-1438
parent 474563b9
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_LOGS" />
<application <application
android:allowBackup="true" android:allowBackup="true"
...@@ -30,7 +29,7 @@ ...@@ -30,7 +29,7 @@
<activity android:name=".CaptureActivity" /> <activity android:name=".CaptureActivity" />
<activity android:name=".activity.PackageListActivity" /> <activity android:name=".activity.PackageListActivity" />
<service android:name=".service.BylRobotService" /> <service android:name=".service.BylRobotService"/>
<service android:name=".service.BylWebService" /> <service android:name=".service.BylWebService" />
<receiver android:name=".service.BootBroadcastReceiver"> <receiver android:name=".service.BootBroadcastReceiver">
......
...@@ -56,6 +56,11 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback { ...@@ -56,6 +56,11 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
this.appInfoAdapter = AppConfigAdapter() this.appInfoAdapter = AppConfigAdapter()
listView.adapter = this.appInfoAdapter listView.adapter = this.appInfoAdapter
listView.setOnItemClickListener { _, _, position, _ ->
val itemData = this.appInfoAdapter.getItem(position) as ApkInfo
AdbUtil.launchApp("${itemData.packageName}/${itemData.launcher}")
}
initRefreshTimer() initRefreshTimer()
val hasRoot = AdbUtil.checkRootPermission() val hasRoot = AdbUtil.checkRootPermission()
...@@ -172,13 +177,13 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback { ...@@ -172,13 +177,13 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
Log.i(TAG, "startRobot...") Log.i(TAG, "startRobot...")
val intent = Intent(Constants.ACTION_LOCAL_SERVICE) val intent = Intent(Constants.ACTION_LOCAL_SERVICE)
intent.putExtra(Constants.KEY_CMD, Constants.CMD_START) intent.putExtra(Constants.KEY_CMD, Constants.CMD_START)
LocalBroadcastManager.getInstance(this).sendBroadcast(intent) sendBroadcast(intent)
} }
private fun stopRobot() { private fun stopRobot() {
val intent = Intent(Constants.ACTION_LOCAL_SERVICE) val intent = Intent(Constants.ACTION_LOCAL_SERVICE)
intent.putExtra(Constants.KEY_CMD, Constants.CMD_STOP) intent.putExtra(Constants.KEY_CMD, Constants.CMD_STOP)
LocalBroadcastManager.getInstance(this).sendBroadcast(intent) sendBroadcast(intent)
} }
override fun onProtocolFailed(protocol: IProtocol?) { override fun onProtocolFailed(protocol: IProtocol?) {
...@@ -263,8 +268,9 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback { ...@@ -263,8 +268,9 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
else else
itemView = convertView as AppConfigListItem itemView = convertView as AppConfigListItem
val itemData = dataList[position]
itemView.setData(dataList[position]) itemView.setData(dataList[position])
val drawable = getAppIcon(dataList[position].packageName) val drawable = getAppIcon(itemData.packageName)
drawable?.run { drawable?.run {
itemView.setIcon(this) itemView.setIcon(this)
} }
......
...@@ -397,6 +397,7 @@ class Task : Thread, IAppBaseCallback { ...@@ -397,6 +397,7 @@ class Task : Thread, IAppBaseCallback {
Log.i(TAG, "sleep seconds:$seconds") Log.i(TAG, "sleep seconds:$seconds")
try { try {
Thread.sleep((seconds * 1000).toLong()) Thread.sleep((seconds * 1000).toLong())
// AdbUtil.exeCmdEcho("sleep $seconds", true)
} catch (e: Exception) { } catch (e: Exception) {
e.printStackTrace() e.printStackTrace()
} }
......
...@@ -48,13 +48,13 @@ class BylRobotService: Service(), IAppBaseCallback { ...@@ -48,13 +48,13 @@ class BylRobotService: Service(), IAppBaseCallback {
super.onCreate() super.onCreate()
FtpManager.instance.start() FtpManager.instance.start()
initBroadcast() initBroadcast()
// requestAppList() requestAppList()
} }
private fun initBroadcast() { private fun initBroadcast() {
Log.i(TAG, "initBroadcast...") Log.i(TAG, "initBroadcast...")
val intentFilter = IntentFilter(Constants.ACTION_LOCAL_SERVICE) val intentFilter = IntentFilter(Constants.ACTION_LOCAL_SERVICE)
LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, intentFilter) registerReceiver(broadcastReceiver, intentFilter)
} }
private fun requestAppList() { private fun requestAppList() {
...@@ -93,7 +93,7 @@ class BylRobotService: Service(), IAppBaseCallback { ...@@ -93,7 +93,7 @@ class BylRobotService: Service(), IAppBaseCallback {
super.onDestroy() super.onDestroy()
stopTask() stopTask()
FtpManager.instance.stop() FtpManager.instance.stop()
LocalBroadcastManager.getInstance(this).unregisterReceiver(broadcastReceiver) unregisterReceiver(broadcastReceiver)
} }
override fun onProtocolFailed(protocol: IProtocol?) { override fun onProtocolFailed(protocol: IProtocol?) {
...@@ -113,6 +113,8 @@ class BylRobotService: Service(), IAppBaseCallback { ...@@ -113,6 +113,8 @@ class BylRobotService: Service(), IAppBaseCallback {
TaskManager.instance.add(task) TaskManager.instance.add(task)
} }
} }
loadTask()
} }
} }
} }
\ No newline at end of file
...@@ -110,7 +110,7 @@ class TaskManager { ...@@ -110,7 +110,7 @@ class TaskManager {
} }
} }
Thread.sleep(3 * 1000) Thread.sleep(5 * 1000)
} }
} }
}, 0, RUN_TASK_PERIOD) }, 0, RUN_TASK_PERIOD)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment