Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
B
BYLAppRobot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liuyang
BYLAppRobot
Commits
4c53c236
Commit
4c53c236
authored
Oct 10, 2018
by
liuyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
APK图片抓取识别及轮播流地址抓取,客户端上报修改
#BYLSERVER-1438
parent
c7c79049
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
44 additions
and
8 deletions
+44
-8
MainActivity.kt
app/src/main/java/com/duolebo/blyrobot/MainActivity.kt
+11
-6
Task.kt
app/src/main/java/com/duolebo/blyrobot/data/Task.kt
+27
-1
AppConfigListItem.kt
...rc/main/java/com/duolebo/blyrobot/ui/AppConfigListItem.kt
+5
-0
Config.kt
app/src/main/java/com/duolebo/blyrobot/util/Config.kt
+1
-1
No files found.
app/src/main/java/com/duolebo/blyrobot/MainActivity.kt
View file @
4c53c236
...
@@ -81,11 +81,12 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
...
@@ -81,11 +81,12 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
}
}
private
fun
getLocalAppList
()
{
private
fun
getLocalAppList
()
{
ThreadProxy
.
getInstance
().
execute
(
object
:
Runnable
{
ThreadProxy
.
getInstance
().
execute
{
override
fun
run
()
{
apkPackageInfo
=
ApkPackageInfo
.
getAppInfos
(
applicationContext
)
apkPackageInfo
=
ApkPackageInfo
.
getAppInfos
(
applicationContext
)
runOnUiThread
{
appInfoAdapter
.
notifyDataSetChanged
()
}
}
}
)
}
}
}
private
fun
initRefreshTimer
()
{
private
fun
initRefreshTimer
()
{
...
@@ -143,7 +144,7 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
...
@@ -143,7 +144,7 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
}
}
}
}
private
fun
getAppIcon
(
packageName
:
String
):
Drawable
?
{
fun
getAppIcon
(
packageName
:
String
):
Drawable
?
{
var
drawable
:
Drawable
?=
null
var
drawable
:
Drawable
?=
null
apkPackageInfo
?.
run
{
apkPackageInfo
?.
run
{
val
targetPackage
=
this
.
find
{
val
targetPackage
=
this
.
find
{
...
@@ -158,7 +159,7 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
...
@@ -158,7 +159,7 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
return
drawable
return
drawable
}
}
class
AppConfigAdapter
:
BaseAdapter
()
{
inner
class
AppConfigAdapter
:
BaseAdapter
()
{
private
val
dataList
=
ArrayList
<
ApkInfo
>()
private
val
dataList
=
ArrayList
<
ApkInfo
>()
...
@@ -176,6 +177,10 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
...
@@ -176,6 +177,10 @@ class MainActivity : AppCompatActivity(), IAppBaseCallback {
itemView
=
convertView
as
AppConfigListItem
itemView
=
convertView
as
AppConfigListItem
itemView
.
setData
(
dataList
[
position
])
itemView
.
setData
(
dataList
[
position
])
val
drawable
=
getAppIcon
(
dataList
[
position
].
packageName
)
drawable
?.
run
{
itemView
.
setIcon
(
this
)
}
return
itemView
return
itemView
}
}
...
...
app/src/main/java/com/duolebo/blyrobot/data/Task.kt
View file @
4c53c236
package
com.duolebo.blyrobot.data
package
com.duolebo.blyrobot.data
import
android.content.Context
import
android.content.Context
import
android.os.Build
import
android.os.Environment
import
android.os.Environment
import
android.util.Log
import
android.util.Log
import
android.widget.Toast
import
android.widget.Toast
...
@@ -14,6 +15,7 @@ import com.duolebo.blyrobot.util.Config
...
@@ -14,6 +15,7 @@ import com.duolebo.blyrobot.util.Config
import
net.gotev.uploadservice.*
import
net.gotev.uploadservice.*
import
net.gotev.uploadservice.ftp.FTPUploadRequest
import
net.gotev.uploadservice.ftp.FTPUploadRequest
import
net.gotev.uploadservice.ftp.UnixPermissions
import
net.gotev.uploadservice.ftp.UnixPermissions
import
org.json.JSONArray
import
org.json.JSONObject
import
org.json.JSONObject
import
java.io.File
import
java.io.File
import
java.text.SimpleDateFormat
import
java.text.SimpleDateFormat
...
@@ -71,9 +73,18 @@ class Task : IAppBaseCallback {
...
@@ -71,9 +73,18 @@ class Task : IAppBaseCallback {
dir
.
mkdirs
()
dir
.
mkdirs
()
}
}
// 准备上传报告信息
private
fun
prepareReport
()
{
this
.
reportJson
=
JSONObject
()
reportJson
.
putOpt
(
ApkInfo
.
NAME
,
this
.
apkInfo
.
name
)
reportJson
.
putOpt
(
ApkInfo
.
PACKAGE_NAME
,
this
.
apkInfo
.
packageName
)
reportJson
.
putOpt
(
"device"
,
Build
.
BRAND
+
"|"
+
Build
.
HARDWARE
+
"|"
+
Build
.
VERSION
.
RELEASE
)
reportJson
.
putOpt
(
"channels"
,
JSONArray
())
}
fun
start
()
{
fun
start
()
{
this
.
status
=
"1"
this
.
status
=
"1"
this
.
reportJson
=
JSONObjec
t
()
this
.
prepareRepor
t
()
// 启动应用
// 启动应用
this
.
launchApp
()
this
.
launchApp
()
// 频道轮询处理
// 频道轮询处理
...
@@ -144,6 +155,21 @@ class Task : IAppBaseCallback {
...
@@ -144,6 +155,21 @@ class Task : IAppBaseCallback {
if
(
screenShots
.
size
>
0
)
if
(
screenShots
.
size
>
0
)
uploadImages
.
addAll
(
screenShots
)
uploadImages
.
addAll
(
screenShots
)
val
playUrlItems
=
analysisCapture
()
val
playUrlItems
=
analysisCapture
()
val
channels
=
this
.
reportJson
.
optJSONArray
(
"channels"
)
val
channelJson
=
JSONObject
()
channelJson
.
putOpt
(
"channelImage"
,
screenShots
[
0
])
channelJson
.
putOpt
(
"channelEpgImage"
,
screenShots
[
1
])
channelJson
.
putOpt
(
"channelId"
,
this
.
channelIndex
)
val
playUrls
=
JSONArray
()
for
(
playUrl
in
playUrlItems
)
{
playUrls
.
put
(
playUrl
.
url
)
}
channelJson
.
putOpt
(
"playUrls"
,
playUrls
)
channels
.
put
(
channelJson
)
}
}
// 抓包处理
// 抓包处理
...
...
app/src/main/java/com/duolebo/blyrobot/ui/AppConfigListItem.kt
View file @
4c53c236
package
com.duolebo.blyrobot.ui
package
com.duolebo.blyrobot.ui
import
android.content.Context
import
android.content.Context
import
android.graphics.drawable.Drawable
import
android.view.LayoutInflater
import
android.view.LayoutInflater
import
android.widget.RelativeLayout
import
android.widget.RelativeLayout
import
com.duolebo.blyrobot.R
import
com.duolebo.blyrobot.R
...
@@ -17,4 +18,8 @@ class AppConfigListItem(context: Context?) : RelativeLayout(context) {
...
@@ -17,4 +18,8 @@ class AppConfigListItem(context: Context?) : RelativeLayout(context) {
this
.
appName
.
text
=
apkInfo
.
name
this
.
appName
.
text
=
apkInfo
.
name
this
.
packageName
.
text
=
apkInfo
.
packageName
this
.
packageName
.
text
=
apkInfo
.
packageName
}
}
fun
setIcon
(
drawable
:
Drawable
)
{
this
.
appIcon
.
setImageDrawable
(
drawable
)
}
}
}
\ No newline at end of file
app/src/main/java/com/duolebo/blyrobot/util/Config.kt
View file @
4c53c236
...
@@ -3,7 +3,7 @@ package com.duolebo.blyrobot.util
...
@@ -3,7 +3,7 @@ package com.duolebo.blyrobot.util
import
com.duolebo.appbase.prj.bmtv.protocol.IProtocolConfig
import
com.duolebo.appbase.prj.bmtv.protocol.IProtocolConfig
class
Config
:
IProtocolConfig
{
class
Config
:
IProtocolConfig
{
private
val
isDebug
=
fals
e
private
val
isDebug
=
tru
e
override
fun
getProtocolUrl
():
String
{
override
fun
getProtocolUrl
():
String
{
if
(
isDebug
)
if
(
isDebug
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment