Fix issue if stock didn't had a percentage change, then it wasn't included in the list
This commit is contained in:
parent
031eb30ee9
commit
c7223ed02b
5 changed files with 25 additions and 10 deletions
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectType">
|
<component name="ProjectType">
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,6 @@ android {
|
||||||
buildConfigField "String", "CONFIG_COMPANY_NAME_ID", "\"$COMPANY_NAME_ID\""
|
buildConfigField "String", "CONFIG_COMPANY_NAME_ID", "\"$COMPANY_NAME_ID\""
|
||||||
buildConfigField "String", "CONFIG_COMPANY_TICKER_ID", "\"$COMPANY_TICKER_ID\""
|
buildConfigField "String", "CONFIG_COMPANY_TICKER_ID", "\"$COMPANY_TICKER_ID\""
|
||||||
buildConfigField "String", "CONFIG_COMPANY_SHARE_PRICE_ID", "\"$COMPANY_SHARE_PRICE_ID\""
|
buildConfigField "String", "CONFIG_COMPANY_SHARE_PRICE_ID", "\"$COMPANY_SHARE_PRICE_ID\""
|
||||||
buildConfigField "String", "CONFIG_COMPANY_CHANGE_PERCENT_ID", "\"$COMPANY_CHANGE_PERCENT_ID\""
|
|
||||||
buildConfigField "String", "CONFIG_RECYCLER_ID1", "\"$RECYCLER_ID1\""
|
buildConfigField "String", "CONFIG_RECYCLER_ID1", "\"$RECYCLER_ID1\""
|
||||||
buildConfigField "String", "CONFIG_RECYCLER_ID2", "\"$RECYCLER_ID2\""
|
buildConfigField "String", "CONFIG_RECYCLER_ID2", "\"$RECYCLER_ID2\""
|
||||||
applicationId "org.fknives.rstocklist"
|
applicationId "org.fknives.rstocklist"
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ class ParseTicker {
|
||||||
?.firstOrNull()
|
?.firstOrNull()
|
||||||
?.trim()
|
?.trim()
|
||||||
} else {
|
} else {
|
||||||
|
System.err.println("couldnt process item: ${accessibilityNodeInfo.findAccessibilityNodeInfosByViewId(BuildConfig.CONFIG_COMPANY_TICKER_ID).map(AccessibilityNodeInfo::getText)}")
|
||||||
null
|
null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -26,8 +27,7 @@ class ParseTicker {
|
||||||
BuildConfig.CONFIG_COMPANY_IMG_ID,
|
BuildConfig.CONFIG_COMPANY_IMG_ID,
|
||||||
BuildConfig.CONFIG_COMPANY_NAME_ID,
|
BuildConfig.CONFIG_COMPANY_NAME_ID,
|
||||||
BuildConfig.CONFIG_COMPANY_TICKER_ID,
|
BuildConfig.CONFIG_COMPANY_TICKER_ID,
|
||||||
BuildConfig.CONFIG_COMPANY_SHARE_PRICE_ID,
|
BuildConfig.CONFIG_COMPANY_SHARE_PRICE_ID
|
||||||
BuildConfig.CONFIG_COMPANY_CHANGE_PERCENT_ID
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,10 +24,23 @@ class SyncService : AccessibilityService() {
|
||||||
syncState = SyncState.WORKING
|
syncState = SyncState.WORKING
|
||||||
traverseRecyclerView = object : TraverseRecyclerView(0) {
|
traverseRecyclerView = object : TraverseRecyclerView(0) {
|
||||||
val tickers = mutableListOf<String>()
|
val tickers = mutableListOf<String>()
|
||||||
|
var foundRetried = 0
|
||||||
|
|
||||||
override fun found(accessibilityNodeInfo: AccessibilityNodeInfo) {
|
override fun found(accessibilityNodeInfo: AccessibilityNodeInfo): Boolean {
|
||||||
parseTicker(accessibilityNodeInfo)?.let(tickers::add)
|
val ticker = parseTicker(accessibilityNodeInfo)
|
||||||
listener?.onItemProcessed(tickers.size - 1)
|
ticker?.let(tickers::add)
|
||||||
|
if (ticker == null) {
|
||||||
|
foundRetried++
|
||||||
|
} else {
|
||||||
|
foundRetried = 0
|
||||||
|
tickers.add(ticker)
|
||||||
|
listener?.onItemProcessed(tickers.size - 1)
|
||||||
|
}
|
||||||
|
if (foundRetried == 10) {
|
||||||
|
foundRetried = 0
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return ticker != null
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun finished() {
|
override fun finished() {
|
||||||
|
|
|
||||||
|
|
@ -32,13 +32,16 @@ abstract class TraverseRecyclerView(private var index: Int) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else -> {
|
else -> {
|
||||||
index++
|
if (found(found)) {
|
||||||
found(found)
|
index++
|
||||||
|
} else {
|
||||||
|
recyclerView.scrollBackward()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected abstract fun found(accessibilityNodeInfo: AccessibilityNodeInfo)
|
protected abstract fun found(accessibilityNodeInfo: AccessibilityNodeInfo): Boolean
|
||||||
|
|
||||||
protected abstract fun finished()
|
protected abstract fun finished()
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue