作者 pandada8987

新增668、咔咔渠道

正在显示 98 个修改的文件 包含 4628 行增加0 行删除

要显示太多修改。

为保证性能只显示 98 of 98+ 个文件。

<?xml version="1.0" encoding="UTF-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android" >
<permissionConfig>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="com.asus.msa.SupplementaryDID.ACCESS"/>
<uses-permission android:name="freemme.permission.msa"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.VIBRATE"/>
</permissionConfig>
<applicationConfig android:usesCleartextTraffic="true"
proxyApplication="com.stss.sdk.ManDiAppListener">
<uses-library android:name="org.apache.http.legacy" android:required="false" />
<activity android:windowSoftInputMode="stateAlwaysHidden" android:theme="@style/brsdk_transparent"
android:name="com.brsdk.android.ui.BRUIPermission" android:configChanges="orientation|keyboardHidden|screenSize|keyboard|fontScale"
android:screenOrientation="behind"/>
<meta-data
android:name="STSS_CHANNEL_APPLICATION_CLASS"
android:value="com.brsdk.android.BRApplication" />
</applicationConfig>
</manifest>
\ No newline at end of file
... ...
{
"AppId": "CHANNEL_AppID",
"AppKey": "CHANNEL_AppKey",
"PriPolicy": "https://sdk.cm1758.com/contract?type=2&appId=CHANNEL_AppID",
"UserAgree": "https://sdk.cm1758.com/contract?type=1&appId=CHANNEL_AppKey"
}
\ No newline at end of file
... ...
{
"Sign": "Dv8q0/cJ8GbCKCmEaffpwLg96X4N6tJHQau2Xtq+T012csQkWnNg2iqngDe4oaQDiouS4Im/IFkbUvl3K2ZDD3lMHLSrQJ+Sgaq8He4nPy8UDGohu6CacruHXM3tjSG5UQYlEeHLzuOmAy2kmuYJbhKYJAt06dSXi4brZZhe+NVgGxtdKyyfwATRrGqruVcA46312m3nu3h+IcMTRfbyC7U7+mntBmzgCQGcrOQEEiOW2B/N6pubb2IBlaS4BTndItiDoJNsPl7q2pBUp16SHo+lCcyk0EpzuZ8IIzYQ9tTIS4XTX6keaS7bBpTwgjO61XSkR3qE6sr1OyBGQEDgDQ=="
}
\ No newline at end of file
... ...
{
"supplier":{
"vivo":{
"appid":"100215079"
},
"xiaomi":{
},
"huawei":{
},
"oppo":{
}
}
}
... ...
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import os.path
from xml.etree import ElementTree as ET
from xml.etree.ElementTree import SubElement
from xml.etree.ElementTree import Element
from xml.etree.ElementTree import ElementTree
import os
import os.path
import zipfile
import re
import subprocess
import platform
from xml.dom import minidom
import codecs
import sys
androidNS = 'http://schemas.android.com/apk/res/android'
def execute(channel, decompileDir, packageName):
write_params_to_config(channel, decompileDir)
modify_main_activity_smali(decompileDir)
return 0
def write_params_to_config(channel, decompileDir):
AppID = ''
AppKey = ''
AppVersion = '1.0'
ScreenType = '1'
if channel['params'] != None and len(channel['params']) > 0:
for param in channel['params']:
if param['name'] == 'AppID':
AppID = param['value']
elif param['name'] == 'AppKey':
AppKey = param['value']
developer_config_path = decompileDir + '/assets/brsdk_config.json'
euConfigFile = open(developer_config_path, 'r+', encoding='Utf-8')
configContent = str(euConfigFile.read())
euConfigFile.close()
configContent = configContent.replace('CHANNEL_AppID', AppID)
configContent = configContent.replace('CHANNEL_AppKey', AppKey)
developer_config_file = open(developer_config_path, 'w', encoding='Utf-8')
developer_config_file.write(configContent)
developer_config_file.close()
return 0
def modify_main_activity_smali(decompileDir):
manifestFile = decompileDir + "/AndroidManifest.xml"
# manifestFile = file_utils.getFullPath(manifestFile)
ET.register_namespace('android', androidNS)
key = '{' + androidNS + '}name'
tree = ET.parse(manifestFile)
root = tree.getroot()
applicationNode = root.find('application')
if applicationNode is None:
return
activityNodeLst = applicationNode.findall('activity')
if activityNodeLst is None:
return
mainActivityName = ''
for activityNode in activityNodeLst:
bMain = False
intentNodeLst = activityNode.findall('intent-filter')
if intentNodeLst is None:
break
for intentNode in intentNodeLst:
bFindAction = False
bFindCategory = False
actionNodeLst = intentNode.findall('action')
if actionNodeLst is None:
break
for actionNode in actionNodeLst:
if actionNode.attrib[key] == 'android.intent.action.MAIN':
bFindAction = True
break
categoryNodeLst = intentNode.findall('category')
if categoryNodeLst is None:
break
for categoryNode in categoryNodeLst:
if categoryNode.attrib[key] == 'android.intent.category.LAUNCHER':
bFindCategory = True
break
if bFindAction and bFindCategory:
bMain = True
break
if bMain:
mainActivityName = activityNode.attrib[key]
break
if len(mainActivityName) == 0:
return
mainActivityPath = mainActivityName.replace(".", "/")
mainActivityPath = decompileDir + '/smali/' + mainActivityPath + '.smali'
f = open(mainActivityPath, 'r+', encoding='Utf-8')
mainActivityContent = str(f.read())
f.close()
fl = open(mainActivityPath, 'r+')
lines = fl.readlines()
fl.close()
superClassLine = lines[1]
superClassLine.strip()
superClassName = 'Landroid/app/Activity;'
if superClassLine.startswith(".super"):
blocks = superClassLine.split()
superClassName = blocks[len(blocks)-1]
replaceTxt = 'invoke-super {p0, p1, p2, p3}, ' + superClassName + '->onRequestPermissionsResult(I[Ljava/lang/String;[I)V'
idx = mainActivityContent.find(replaceTxt)
if idx == -1:
targetTxt = "\n.method public onRequestPermissionsResult(I[Ljava/lang/String;[I)V\n .locals 2\n\n invoke-super {p0, p1, p2, p3}, " + superClassName + "->onRequestPermissionsResult(I[Ljava/lang/String;[I)V\n\n invoke-static {p1, p2, p3}, Lcom/stss/sdk/STSSAggGame;->onRequestPermissionsResult(I[Ljava/lang/String;[I)V\n\n return-void\n.end method"
mainActivityContent = mainActivityContent + targetTxt
else:
targetTxt = " invoke-super {p0, p1, p2, p3}, " + superClassName + "->onRequestPermissionsResult(I[Ljava/lang/String;[I)V\n\n invoke-static {p1, p2, p3}, Lcom/stss/sdk/STSSAggGame;->onRequestPermissionsResult(I[Ljava/lang/String;[I)V"
mainActivityContent = mainActivityContent[:idx] + targetTxt + mainActivityContent[(idx + len(replaceTxt)):]
f2 = open(mainActivityPath, 'w', encoding='Utf-8')
f2.write(mainActivityContent)
f2.close()
return 0
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<config>
<params>
<param name="AppID" required="1" showName="AppID" desc="QianQian sdk app id" bWriteInManifest="0" bWriteInClient="1" />
<param name="AppKey" required="1" showName="AppKey" desc="QianQian sdk app key" bWriteInManifest="0" bWriteInClient="1" />
<param name="AppOrientation" required="1" showName="AppOrientation" desc="QianQian sdk orientation" bWriteInManifest="0" bWriteInClient="1" />
</params>
<operations>
<operation step="1" type="mergeManifest" from="SDKManifest.xml" to="AndroidManifest.xml" />
<operation step="2" type="copyRes" from="assets" to="assets" />
<operation step="3" type="copyRes" from="libs" to="lib" />
<operation step="4" type="copyRes" from="res" to="res" />
<operation step="5" type="copyRes" from="root" to="" />
</operations>
<plugins>
<plugin name="com.stss.sdk.QianQianUser" type="1" desc="用户登录接口"/>
<plugin name="com.stss.sdk.QianQianPay" type="2" desc="用户支付接口"/>
</plugins>
<version>
<name>芊芊668</name>
<versionCode>1</versionCode>
<versionName>1.0.1</versionName>
</version>
</config>
\ No newline at end of file
... ...
不能预览此文件类型
不能预览此文件类型
不能预览此文件类型
不能预览此文件类型
不能预览此文件类型
不能预览此文件类型
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromYDelta="100%p"
android:toYDelta="0"
/>
<alpha
android:duration="100"
android:fromAlpha="0.0"
android:toAlpha="1.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromYDelta="0"
android:toYDelta="100%p"
/>
<alpha
android:duration="100"
android:fromAlpha="1.0"
android:toAlpha="0.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromXDelta="-100%p"
android:toXDelta="0"
/>
<alpha
android:duration="100"
android:fromAlpha="0.0"
android:toAlpha="1.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromXDelta="0"
android:toXDelta="-100%p"
/>
<alpha
android:duration="100"
android:fromAlpha="1.0"
android:toAlpha="0.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromXDelta="100%p"
android:toXDelta="0"
/>
<alpha
android:duration="100"
android:fromAlpha="0.0"
android:toAlpha="1.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromXDelta="0"
android:toXDelta="100%p"
/>
<alpha
android:duration="100"
android:fromAlpha="1.0"
android:toAlpha="0.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromYDelta="-100%p"
android:toYDelta="0"
/>
<alpha
android:duration="100"
android:fromAlpha="0.0"
android:toAlpha="1.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="100"
android:fromYDelta="0"
android:toYDelta="-100%p"
/>
<alpha
android:duration="100"
android:fromAlpha="1.0"
android:toAlpha="0.0"
/>
</set>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/brsdk_white" android:state_checked="false" />
<item android:color="@color/brsdk_theme" android:state_checked="true" />
</selector>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@drawable/brsdk_dropdown_white"
android:state_selected="false"
/>
<item
android:drawable="@drawable/brsdk_pullup_white"
android:state_selected="true"
/>
</selector>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
>
<corners android:radius="4dp" />
<stroke android:color="#ff8800" android:width="1dp" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid
android:color="@color/brsdk_black50"
/>
<corners android:radius="100dp" />
</shape>
</item>
<item
android:top="@dimen/brsdk_space_8dp"
android:bottom="@dimen/brsdk_space_8dp"
android:left="@dimen/brsdk_space_8dp"
android:right="@dimen/brsdk_space_8dp"
>
<bitmap
android:src="@drawable/brsdk_close_white"
/>
</item>
</layer-list>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
>
<solid android:color="@color/brsdk_gray50" />
<size android:height="0.5dp" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
>
<solid android:color="@color/brsdk_gray50" />
<size android:width="@dimen/brsdk_space_1dp" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<inset android:insetTop="2.5dp">
<bitmap
android:src="@drawable/brsdk_checked_white"
android:tint="@color/brsdk_theme"
/>
</inset>
</item>
<item android:state_checked="false">
<inset android:insetTop="2.5dp">
<bitmap
android:src="@drawable/brsdk_check_white"
android:tint="@color/brsdk_white"
/>
</inset>
</item>
</selector>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@android:id/background"
android:drawable="@android:color/transparent"
/>
<item
android:id="@android:id/secondaryProgress"
>
<scale
android:drawable="@android:color/transparent"
android:scaleWidth="100%"
/>
</item>
<item
android:id="@android:id/progress"
>
<scale
android:drawable="@color/brsdk_theme50"
android:scaleWidth="100%"
/>
</item>
</layer-list>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/brsdk_space_4dp" />
<solid android:color="@color/brsdk_black50" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
>
<corners android:radius="4dp" />
<solid android:color="#ff8800" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
>
<corners android:radius="@dimen/brsdk_space_4dp" />
<solid android:color="@color/brsdk_white" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/brsdk_space_8dp" />
<!-- 游戏狗,显示我方实名弹窗,这里报错【非必现】 -->
<solid android:color="@color/brsdk_black75" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
>
<corners android:radius="8dp" />
<solid android:color="@android:color/white" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners
android:topLeftRadius="@dimen/brsdk_space_8dp"
android:topRightRadius="@dimen/brsdk_space_8dp"/>
<solid android:color="@color/brsdk_black50" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
>
<solid android:color="@android:color/transparent" />
</shape>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_selected="false"
android:drawable="@drawable/brsdk_unlook_white"
/>
<item
android:state_selected="true"
android:drawable="@drawable/brsdk_look_white"
/>
</selector>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true">
<bitmap
android:src="@drawable/brsdk_checked_white"
android:tint="@color/brsdk_theme"
/>
</item>
<item
android:drawable="@drawable/brsdk_check_white"
android:state_checked="false"
/>
</selector>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
android:orientation="horizontal"
android:padding="@dimen/brsdk_space_4dp"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_marginTop="32dp"
tools:layout_gravity="top|center_horizontal"
>
<com.brsdk.android.widget.BRLoading
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginStart="6dp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:gravity="center_vertical"
android:textSize="@dimen/brsdk_font_16sp"
android:text="@string/brsdk_auto_welcome"
android:layout_marginStart="6dp"
/>
<TextView
android:id="@+id/brAccount"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:gravity="center_vertical"
android:layout_marginStart="@dimen/brsdk_space_4dp"
android:textSize="@dimen/brsdk_font_16sp"
android:ellipsize="end"
android:maxLines="1"
tools:text="17726342778"
/>
<TextView
android:id="@+id/brSwitch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_16sp"
android:text="@string/brsdk_switch_account"
android:padding="@dimen/brsdk_space_8dp"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_gravity="center"
>
<include
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/brsdk_navigation"
android:layout_marginTop="-4dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/brsdk_r4_white"
android:gravity="center_vertical"
>
<include layout="@layout/brsdk_phone_verify" />
</LinearLayout>
<TextView
android:id="@+id/brSubmit"
android:layout_width="match_parent"
android:layout_height="40dp"
android:textColor="@color/brsdk_white"
android:textSize="@dimen/brsdk_font_18sp"
android:text="@string/brsdk_button_bind"
android:background="@drawable/brsdk_r4_theme"
android:includeFontPadding="false"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:gravity="center"
/>
<TextView
android:id="@+id/brMessage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="@dimen/brsdk_font_12sp"
android:textColor="@color/brsdk_white"
android:text="@string/brsdk_phone_desc"
android:lineSpacingExtra="2dp"
android:includeFontPadding="false"
android:layout_marginTop="10dp"
android:gravity="center"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
android:background="@color/brsdk_black75"
android:orientation="vertical"
android:layout_margin="0dp"
android:gravity="top"
tools:layout_height="480dp"
tools:layout_gravity="bottom"
>
<include
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/brsdk_navigation"
android:layout_marginTop="-6dp"
/>
<com.brsdk.android.widget.pager.ViewPager
android:id="@+id/brViewPage"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
/>
<com.brsdk.android.widget.BRIndicator
android:id="@+id/brIndicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:layout_gravity="center_horizontal"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
android:padding="0dp"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_gravity="center"
>
<TextView
android:id="@+id/brTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/brsdk_space_16dp"
android:paddingStart="@dimen/brsdk_space_16dp"
android:paddingEnd="@dimen/brsdk_space_16dp"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_16sp"
android:gravity="center"
tools:text="警告"
/>
<TextView
android:id="@+id/brMessage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:padding="@dimen/brsdk_space_16dp"
android:lineSpacingExtra="@dimen/brsdk_space_8dp"
android:textSize="@dimen/brsdk_font_16sp"
android:minHeight="80dp"
android:gravity="center"
tools:text="这是通知消息\n这是第二行"
/>
<View
android:layout_width="match_parent"
android:layout_height="@dimen/brsdk_space_1dp"
android:background="@drawable/brsdk_divider_h"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:divider="@drawable/brsdk_divider_v"
android:showDividers="middle"
>
<TextView
android:id="@+id/brNegative"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:padding="@dimen/brsdk_space_12dp"
android:textSize="@dimen/brsdk_font_16sp"
android:visibility="gone"
android:gravity="center"
tools:text="取消"
tools:visibility="visible"
/>
<TextView
android:id="@+id/brPositive"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:padding="@dimen/brsdk_space_12dp"
android:textSize="@dimen/brsdk_font_16sp"
android:visibility="gone"
android:gravity="center"
tools:text="确定"
tools:visibility="visible"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
android:background="@color/brsdk_white"
android:padding="0dp"
android:layout_margin="0dp"
android:gravity="top"
tools:layout_width="match_parent"
tools:layout_height="480dp"
tools:layout_gravity="bottom"
>
<com.brsdk.android.widget.BRWebView
android:id="@+id/brWebView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
>
<ImageView
android:id="@+id/brCover"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:layout_gravity="center"
android:adjustViewBounds="true"
tools:src="@drawable/brsdk_splash_land"
/>
<ImageView
android:id="@+id/brClose"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_gravity="end"
android:padding="@dimen/brsdk_space_4dp"
android:src="@drawable/brsdk_close_black50"
/>
</FrameLayout>
</FrameLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_gravity="center"
>
<include
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/brsdk_navigation"
android:layout_marginTop="-4dp"
/>
<TextView
android:id="@+id/brMessage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="@dimen/brsdk_font_10sp"
android:textColor="@color/brsdk_white"
android:text="@string/brsdk_identify_desc"
android:includeFontPadding="false"
android:layout_marginTop="-4dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:background="@drawable/brsdk_r4_white"
android:gravity="center_vertical"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_account_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brFullName"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_identify_name"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:maxLines="1"
/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/brsdk_gray50"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_identify_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brIDCode"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_identify_code"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:maxLines="1"
/>
<!-- android:inputType="number"-->
<!-- android:digits="0123456789Xx"-->
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/brSubmit"
android:layout_width="match_parent"
android:layout_height="40dp"
android:textColor="@color/brsdk_white"
android:textSize="@dimen/brsdk_font_18sp"
android:text="@string/brsdk_button_submit"
android:background="@drawable/brsdk_r4_theme"
android:includeFontPadding="false"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:gravity="center"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="36dp"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="match_parent"
android:src="@drawable/brsdk_history_white"
android:tint="@color/brsdk_gray"
android:padding="10dp"
/>
<TextView
android:id="@+id/brAccount"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:textColor="@color/brsdk_666666"
android:gravity="center_vertical"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_16sp"
android:maxLines="1"
tools:text="12345678900"
/>
<ImageView
android:id="@+id/brDelete"
android:layout_width="40dp"
android:layout_height="match_parent"
android:src="@drawable/brsdk_close_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:background="#80000000"
>
<LinearLayout
android:id="@+id/brTptView"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
tools:visibility="visible"
>
<TextView
android:id="@+id/brTptName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxWidth="160dp"
android:textSize="@dimen/brsdk_font_14sp"
android:paddingTop="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
android:textColor="@color/brsdk_white"
android:maxLines="1"
android:ellipsize="end"
tools:text="小号1"
/>
<ImageView
android:id="@+id/brTptWrite"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="@drawable/brsdk_edit_gray"
android:padding="10dp"
/>
<View
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="0dp"
/>
<TextView
android:id="@+id/brTptEnter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:textSize="@dimen/brsdk_font_14sp"
android:layout_marginStart="@dimen/brsdk_space_8dp"
android:paddingTop="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
android:text="@string/brsdk_enter_game"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/brTptEditor"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
tools:visibility="gone"
>
<EditText
android:id="@+id/brTptInput"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textSize="@dimen/brsdk_font_14sp"
android:paddingTop="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
android:textColor="@color/brsdk_white"
android:maxLines="1"
android:background="@null"
tools:text="方法是大家"
/>
<TextView
android:id="@+id/brTptCancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white50"
android:textSize="@dimen/brsdk_font_14sp"
android:layout_marginStart="@dimen/brsdk_space_8dp"
android:paddingTop="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
android:text="@string/brsdk_cancel_text"
/>
<TextView
android:id="@+id/brTptSubmit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:textSize="@dimen/brsdk_font_14sp"
android:layout_marginStart="@dimen/brsdk_space_16dp"
android:paddingTop="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
android:text="@string/brsdk_button_submit"
/>
</LinearLayout>
<ProgressBar
android:id="@+id/brTptDelay"
android:layout_width="match_parent"
android:layout_height="2dp"
style="@android:style/Widget.ProgressBar.Horizontal"
android:progressDrawable="@drawable/brsdk_progress_theme50"
android:layout_gravity="bottom"
android:visibility="gone"
tools:visibility="visible"
android:progress="2"
android:max="5"
/>
</FrameLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:background="@drawable/brsdk_r4_black50"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="@dimen/brsdk_space_16dp"
android:paddingBottom="@dimen/brsdk_space_16dp"
android:orientation="vertical"
android:paddingStart="32dp"
android:paddingEnd="32dp"
android:gravity="center"
android:layout_gravity="center"
>
<com.brsdk.android.widget.BRLoading
android:id="@+id/brLoading"
android:layout_width="32dp"
android:layout_height="32dp"
/>
<TextView
android:id="@+id/brMessage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_14sp"
android:layout_marginTop="@dimen/brsdk_space_4dp"
tools:text="初始化"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
tools:layout_width="match_parent"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_gravity="center"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:id="@+id/brLogo"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="@drawable/brsdk_logo_"
/>
<TextView
android:id="@+id/brTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_16sp"
android:text="@string/brsdk_login_text"
android:layout_marginStart="@dimen/brsdk_space_8dp"
/>
<View
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="0dp"
/>
<TextView
android:id="@+id/brLibrary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="false"
android:text="@string/brsdk_sdk_name"
android:textColor="@color/brsdk_white"
android:textSize="@dimen/brsdk_font_18sp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:background="@drawable/brsdk_r4_white"
android:gravity="center_vertical"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_account_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brAccount"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_account_hint"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:importantForAutofill="no"
android:maxLines="1"
/>
<ImageView
android:id="@+id/brRecord"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_arrow_white"
android:tint="@color/brsdk_gray"
android:padding="14dp"
/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/brsdk_gray50"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_locked_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brPassword"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_password_hint"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:importantForAutofill="no"
android:inputType="textPassword"
android:maxLines="1"
/>
<!--
importantForAutofill:
禁止自动填充,防止自动保存提示带来的UI异常
-->
<TextView
android:id="@+id/brForgot"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:gravity="center"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:text="@string/brsdk_password_forgot"
android:textSize="@dimen/brsdk_font_12sp"
android:paddingStart="@dimen/brsdk_space_8dp"
android:paddingEnd="@dimen/brsdk_space_8dp"
/>
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/brSubmit"
android:layout_width="match_parent"
android:layout_height="40dp"
android:textColor="@color/brsdk_white"
android:textSize="@dimen/brsdk_font_18sp"
android:text="@string/brsdk_login_submit"
android:background="@drawable/brsdk_r4_theme"
android:includeFontPadding="false"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:gravity="center"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="@dimen/brsdk_space_12dp"
>
<View
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="0dp"
/>
<TextView
android:id="@+id/brRegPhone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_12sp"
android:text="@string/brsdk_reg_phone"
android:drawableTop="@drawable/brsdk_phone_white"
android:drawablePadding="@dimen/brsdk_space_4dp"
/>
<View
android:layout_width="0dp"
android:layout_weight="2"
android:layout_height="0dp"
/>
<TextView
android:id="@+id/brRegAccount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_12sp"
android:text="@string/brsdk_reg_account"
android:drawableTop="@drawable/brsdk_account_white"
android:drawablePadding="@dimen/brsdk_space_4dp"
/>
<View
android:layout_width="0dp"
android:layout_weight="2"
android:layout_height="0dp"
/>
<TextView
android:id="@+id/brRegQuick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_12sp"
android:text="@string/brsdk_reg_quick"
android:drawableTop="@drawable/brsdk_quick_white"
android:drawablePadding="@dimen/brsdk_space_4dp"
/>
<View
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="0dp"
/>
</LinearLayout>
<TextView
android:id="@+id/brProAdult"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:textSize="@dimen/brsdk_font_10sp"
android:text="@string/brsdk_login_protocol"
android:gravity="center"
android:button="@null"
/>
<CheckBox
android:id="@+id/brProtocol"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_10sp"
android:drawableStart="@drawable/brsdk_white_cb_theme"
android:layout_marginBottom="-4dp"
android:drawablePadding="@dimen/brsdk_space_4dp"
android:padding="@dimen/brsdk_space_4dp"
android:text="@string/brsdk_reg_protocol"
android:gravity="center"
android:button="@null"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/brDialogNavigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
android:paddingBottom="@dimen/brsdk_space_4dp"
>
<TextView
android:id="@+id/brTitle"
android:layout_width="wrap_content"
android:layout_height="32dp"
android:textColor="@color/brsdk_white"
android:gravity="center_vertical"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_16sp"
tools:text="这是标题"
/>
<View
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="0dp"
/>
<ImageView
android:id="@+id/brClose"
android:layout_width="32dp"
android:layout_height="32dp"
android:src="@drawable/brsdk_close_white"
android:layout_marginEnd="-6dp"
android:padding="@dimen/brsdk_space_8dp"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<CheckBox
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
android:paddingEnd="@dimen/brsdk_space_8dp"
android:textColor="@color/brsdk_white_theme"
android:button="@drawable/brsdk_permission"
android:includeFontPadding="false"
android:gravity="top"
tools:text="111111111\n22222222222222\n333333333"
/>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:background="@android:color/transparent"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:padding="32dp"
>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:id="@+id/brLayout"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/brsdk_r8_black75"
android:layout_gravity="center"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/brsdk_space_16dp"
android:paddingStart="@dimen/brsdk_space_16dp"
android:paddingEnd="@dimen/brsdk_space_16dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_16sp"
android:text="@string/brsdk_permission"
android:gravity="center"
/>
<ListView
android:id="@+id/brPermission"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:paddingStart="@dimen/brsdk_space_16dp"
android:paddingEnd="@dimen/brsdk_space_16dp"
android:overScrollMode="never"
android:scrollbars="none"
android:divider="@null"
tools:listitem="@layout/brsdk_permission"
/>
<View
android:layout_width="match_parent"
android:layout_height="@dimen/brsdk_space_1dp"
android:background="@drawable/brsdk_divider_h"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:divider="@drawable/brsdk_divider_v"
android:showDividers="middle"
>
<TextView
android:id="@+id/brNegative"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:text="@string/brsdk_cancel_text"
android:padding="@dimen/brsdk_space_12dp"
android:textSize="@dimen/brsdk_font_16sp"
android:gravity="center"
/>
<TextView
android:id="@+id/brPositive"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:text="@string/brsdk_exit_cancel"
android:padding="@dimen/brsdk_space_12dp"
android:textSize="@dimen/brsdk_font_16sp"
android:gravity="center"
/>
</LinearLayout>
</LinearLayout>
</FrameLayout>
</FrameLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:id="@+id/brCountry"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_phone_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brAccount"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_input_phone"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:importantForAutofill="no"
android:inputType="phone"
android:maxLines="1"
/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/brsdk_gray50"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_safety_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
>
<EditText
android:id="@+id/brSafety"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_safety_code"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:inputType="number"
android:maxLines="1"
/>
<View
android:layout_width="0.5dp"
android:layout_height="match_parent"
android:background="@color/brsdk_gray50"
/>
<TextView
android:id="@+id/brRequest"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textColor="@color/brsdk_theme"
android:textSize="@dimen/brsdk_font_12sp"
android:text="@string/brsdk_send_code"
android:includeFontPadding="false"
android:paddingStart="@dimen/brsdk_space_8dp"
android:paddingEnd="@dimen/brsdk_space_8dp"
android:gravity="center"
/>
</LinearLayout>
</LinearLayout>
</merge>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/brsdk_r8_white"
android:paddingTop="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_12dp"
android:paddingStart="@dimen/brsdk_space_16dp"
android:paddingEnd="@dimen/brsdk_space_16dp"
android:elevation="@dimen/brsdk_space_4dp"
tools:layout_gravity="center"
tools:layout_width="230dp"
>
<TextView
android:id="@+id/brTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#333333"
android:textSize="@dimen/brsdk_font_16sp"
android:gravity="center"
android:paddingTop="8dp"
android:paddingBottom="8dp"
android:textStyle="bold"
android:text="@string/brsdk_protocol_title"
/>
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:minHeight="128dp"
android:layout_marginBottom="@dimen/brsdk_space_8dp"
android:overScrollMode="never"
android:scrollbars="none"
>
<TextView
android:id="@+id/brMessage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/brsdk_space_4dp"
android:paddingBottom="@dimen/brsdk_space_4dp"
android:textColor="#444444"
android:textSize="13dp"
android:lineSpacingExtra="2dp"
tools:text="在此特别提醒您在注册成为用户之前,请认真阅读本《隐私政策与用户协议》,确保您充分理解本协议中各条款。请您审慎阅读并选择接受或不接受本协议。您的注册、登录、使用等行为将视为对本协议的接受,并同意接受本协议各项条款的约束。"
/>
</ScrollView>
<TextView
android:id="@+id/brPositive"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@android:color/white"
android:background="@drawable/brsdk_r4_theme"
android:gravity="center"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:textSize="@dimen/brsdk_font_16sp"
tools:text="同意"
/>
<TextView
android:id="@+id/brNegative"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@android:color/darker_gray"
android:gravity="center"
android:paddingTop="@dimen/brsdk_space_4dp"
android:paddingBottom="@dimen/brsdk_space_4dp"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:textSize="@dimen/brsdk_font_12sp"
tools:text="不同意"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
tools:layout_width="match_parent"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_gravity="center"
>
<include
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/brsdk_navigation"
android:layout_marginTop="-6dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/brsdk_r4_white"
android:gravity="center_vertical"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_account_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brAccount"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_input_account"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:importantForAutofill="no"
android:maxLines="1"
/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/brsdk_gray50"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_locked_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brPassword"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_password_hint"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:inputType="textPassword"
android:importantForAutofill="no"
android:maxLines="1"
/>
<ImageView
android:id="@+id/brSwitch"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_unlook_st_look"
android:tint="@color/brsdk_gray"
android:padding="8dp"
/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/brsdk_gray50"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_locked_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brPassword2"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_password_affirm"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:inputType="textPassword"
android:importantForAutofill="no"
android:maxLines="1"
/>
</LinearLayout>
</LinearLayout>
<include layout="@layout/brsdk_register" />
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
tools:layout_width="match_parent"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_gravity="center"
>
<include
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/brsdk_navigation"
android:layout_marginTop="-6dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@drawable/brsdk_r4_white"
android:gravity="center_vertical"
>
<include layout="@layout/brsdk_phone_verify" />
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/brsdk_gray50"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal"
android:gravity="center_vertical"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_locked_white"
android:tint="@color/brsdk_gray"
android:padding="12dp"
/>
<EditText
android:id="@+id/brPassword"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:hint="@string/brsdk_password_hint"
android:textColorHint="@color/brsdk_gray"
android:textSize="@dimen/brsdk_font_16sp"
android:background="@android:color/transparent"
android:textColor="@color/brsdk_444444"
android:includeFontPadding="false"
android:importantForAutofill="no"
android:inputType="textPassword"
android:maxLines="1"
/>
<ImageView
android:id="@+id/brSwitch"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/brsdk_unlook_st_look"
android:tint="@color/brsdk_gray"
android:padding="8dp"
/>
</LinearLayout>
</LinearLayout>
<include layout="@layout/brsdk_register" />
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
>
<TextView
android:id="@+id/brRegister"
android:layout_width="match_parent"
android:layout_height="40dp"
android:textColor="@color/brsdk_white"
android:textSize="@dimen/brsdk_font_18sp"
android:text="@string/brsdk_register_text"
android:background="@drawable/brsdk_r4_theme"
android:includeFontPadding="false"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:gravity="center"
/>
<CheckBox
android:id="@+id/brProtocol"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_10sp"
android:layout_marginTop="@dimen/brsdk_space_8dp"
android:drawableStart="@drawable/brsdk_white_cb_theme"
android:drawablePadding="@dimen/brsdk_space_4dp"
android:padding="@dimen/brsdk_space_4dp"
android:text="@string/brsdk_reg_protocol"
android:layout_marginBottom="-4dp"
android:gravity="center"
android:button="@null"
/>
</merge>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
android:gravity="top"
tools:layout_width="match_parent"
tools:layout_marginStart="32dp"
tools:layout_marginEnd="32dp"
tools:layout_gravity="center"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
android:layout_marginTop="-8dp"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textColor="@color/brsdk_white"
android:includeFontPadding="false"
android:gravity="center_vertical"
android:textSize="@dimen/brsdk_font_16sp"
android:text="@string/brsdk_auto_welcome"
/>
<TextView
android:id="@+id/brAccount"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:gravity="center_vertical"
android:layout_marginStart="@dimen/brsdk_space_4dp"
android:textSize="@dimen/brsdk_font_16sp"
android:ellipsize="end"
android:maxLines="1"
tools:text="17726342778"
/>
<TextView
android:id="@+id/brSwitch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/brsdk_theme"
android:includeFontPadding="false"
android:textSize="@dimen/brsdk_font_14sp"
android:text="@string/brsdk_switch_account"
android:paddingTop="@dimen/brsdk_space_8dp"
android:paddingBottom="@dimen/brsdk_space_8dp"
/>
</LinearLayout>
<TextView
android:id="@+id/brLoading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="48dp"
android:layout_marginBottom="48dp"
android:text="@string/brsdk_loading_text"
android:textColor="@color/brsdk_white50"
android:textSize="@dimen/brsdk_font_12sp"
/>
<LinearLayout
android:id="@+id/brDescribe"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
android:layout_marginBottom="@dimen/brsdk_space_4dp"
android:layout_marginTop="2dp"
android:visibility="gone"
tools:visibility="visible"
>
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="@string/brsdk_trumpet_desc"
android:textSize="@dimen/brsdk_font_12sp"
android:maxLines="2"
android:textColor="@color/brsdk_white50"
/>
<TextView
android:id="@+id/brSubjoin"
android:text="@string/brsdk_trumpet_add"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/brsdk_space_8dp"
android:layout_marginTop="@dimen/brsdk_space_4dp"
android:layout_marginBottom="@dimen/brsdk_space_4dp"
android:paddingTop="@dimen/brsdk_space_4dp"
android:paddingBottom="@dimen/brsdk_space_4dp"
android:paddingStart="@dimen/brsdk_space_8dp"
android:paddingEnd="@dimen/brsdk_space_8dp"
android:background="@drawable/brsdk_r4_theme"
android:textColor="@color/brsdk_white"
android:textSize="@dimen/brsdk_font_14sp"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/brEditor"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
android:layout_marginBottom="@dimen/brsdk_space_4dp"
android:layout_marginTop="2dp"
android:visibility="gone"
tools:visibility="visible"
>
<EditText
android:id="@+id/brTrumpet"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:padding="@dimen/brsdk_space_4dp"
android:hint="@string/brsdk_trumpet_hint"
android:textColor="@color/brsdk_white"
android:textColorHint="@color/brsdk_white50"
android:textSize="@dimen/brsdk_font_14sp"
android:background="@drawable/brsdk_br4_theme"
tools:text="大师傅大势"
/>
<TextView
android:id="@+id/brSubmit"
android:text="@string/brsdk_trumpet_submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/brsdk_space_16dp"
android:layout_marginTop="@dimen/brsdk_space_4dp"
android:layout_marginBottom="@dimen/brsdk_space_4dp"
android:paddingTop="@dimen/brsdk_space_4dp"
android:paddingBottom="@dimen/brsdk_space_4dp"
android:paddingStart="@dimen/brsdk_space_8dp"
android:paddingEnd="@dimen/brsdk_space_8dp"
android:background="@drawable/brsdk_r4_theme"
android:textColor="@color/brsdk_white"
android:textSize="@dimen/brsdk_font_14sp"
/>
</LinearLayout>
<ListView
android:id="@+id/brTrumpets"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:overScrollMode="never"
android:scrollbars="none"
android:visibility="gone"
android:divider="@null"
tools:visibility="visible"
tools:listitem="@layout/brsdk_item_trumpet"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/brsdk_layout_root"
android:background="@color/brsdk_black75"
android:layout_margin="0dp"
android:gravity="top"
tools:layout_height="480dp"
tools:layout_width="match_parent"
tools:layout_gravity="bottom"
>
<include
android:layout_width="match_parent"
android:layout_height="wrap_content"
layout="@layout/brsdk_navigation"
android:layout_marginTop="-6dp"
/>
<com.brsdk.android.widget.BRWebView
android:id="@+id/brWebView"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</LinearLayout>
\ No newline at end of file
... ...
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="brsdk_notice_text">通知</string>
<string name="brsdk_warning_text">警告</string>
<string name="brsdk_error_text">错误</string>
<string name="brsdk_params_empty">未设置关键参数</string>
<string name="brsdk_close_text">关闭</string>
<string name="brsdk_game_crashed">游戏已崩溃</string>
<string name="brsdk_not_login">未登录</string>
<string name="brsdk_mi_disconnect">无网络连接\\n小米设备请检测\\n是否允许该应用连接网络</string>
<string name="brsdk_disconnect_error">无网络连接,请连接网络后重试</string>
<string name="brsdk_retry_text">重试</string>
<string name="brsdk_response_error">网络响应错误,请稍后重试</string>
<string name="brsdk_analyze_failed">网络响应失败,请稍后重试</string>
<string name="brsdk_protocol_title">用户隐私协议</string>
<string name="brsdk_protocol_agree">同意</string>
<string name="brsdk_protocol_deny">不同意</string>
<string name="brsdk_error_unknown">未知错误,请稍后重试</string>
<string name="brsdk_socket_timeout">网络连接超时,请稍后重试</string>
<string name="brsdk_socket_error">网络连接错误,请稍后重试</string>
<string name="brsdk_auto_welcome">欢迎回来,</string>
<string name="brsdk_switch_account">切换账号</string>
<string name="brsdk_login_hint">登录中</string>
<string name="brsdk_login_text">用户登录</string>
<string name="brsdk_sdk_name">泊然游戏</string>
<string name="brsdk_account_hint">请输入账号/手机号</string>
<string name="brsdk_password_hint">请输入登录密码</string>
<string name="brsdk_password_forgot">忘记密码</string>
<string name="brsdk_login_submit">登录</string>
<string name="brsdk_login_protocol">本公司积极履行《防沉迷自律公约》</string>
<string name="brsdk_reg_phone">手机注册</string>
<string name="brsdk_reg_account">账号注册</string>
<string name="brsdk_reg_quick">快速注册</string>
<string name="brsdk_webview_error">浏览器发生错误</string>
<string name="brsdk_find_password">找回密码</string>
<string name="brsdk_input_phone">请输入手机号码</string>
<string name="brsdk_safety_code">请输入验证码</string>
<string name="brsdk_send_code">发送验证码</string>
<string name="brsdk_resend_code">重新发送(%d)</string>
<string name="brsdk_register_text">注册</string>
<string name="brsdk_reg_protocol">我已阅读并同意《用户协议》和《隐私政策》</string>
<string name="brsdk_update_title">游戏更新</string>
<string name="brsdk_update_message">当前游戏有可用更新</string>
<string name="brsdk_update_text">更新</string>
<string name="brsdk_protocol_notify">请仔细阅读并勾选协议</string>
<string name="brsdk_input_account">请输入账号</string>
<string name="brsdk_password_affirm">请确认登录密码</string>
<string name="brsdk_password_diff">确认密码不一致</string>
<string name="brsdk_account_saved">账号信息已截图保存,请勿泄露</string>
<string name="brsdk_bulletin_text">系统公告</string>
<string name="brsdk_exit_message">确定退出当前游戏?</string>
<string name="brsdk_exit_game">退出游戏</string>
<string name="brsdk_exit_define">退出</string>
<string name="brsdk_exit_cancel">继续</string>
<string name="brsdk_identify_desc">根据国家新闻出版署《关于防止未成年人沉迷网络游戏的通知》及《关于进一步严格管理切实防止未成年人沉迷网络游戏的通知》的要求,请完成实名认证</string>
<string name="brsdk_identify_name">请输入身份证姓名</string>
<string name="brsdk_identify_code">请输入身份证号码</string>
<string name="brsdk_button_submit">提交</string>
<string name="brsdk_bind_identify">实名认证</string>
<string name="brsdk_phone_desc">提示:用于手机登录和找回密码</string>
<string name="brsdk_button_bind">绑定</string>
<string name="brsdk_bind_phone">绑定手机</string>
<string name="brsdk_loading_text">加载中</string>
<string name="brsdk_trumpet_desc">每个账号可创建10个小号\n小号可修改不可删除</string>
<string name="brsdk_trumpet_add">添加小号</string>
<string name="brsdk_trumpet_hint">请输入小号名称</string>
<string name="brsdk_trumpet_submit">确认添加</string>
<string name="brsdk_enter_game">进入游戏</string>
<string name="brsdk_cancel_text">取消</string>
<string name="brsdk_trumpet_max">小号数量已达10个,无法继续创建</string>
<string name="brsdk_trumpet_valid">小号只能由字母、数字、汉字组成</string>
<string name="brsdk_submitting">正在提交</string>
<string name="brsdk_error_retry">获取失败,点击重试</string>
<string name="brsdk_request_success">请求成功</string>
<string name="brsdk_trumpets_empty">没有小号</string>
<string name="brsdk_order_create">创建订单</string>
<string name="brsdk_user_logout">注销登录</string>
<string name="brsdk_copy_success">复制成功</string>
<string name="brsdk_checknet_title">网络诊断</string>
<string name="brsdk_payment_title">游戏充值</string>
<string name="brsdk_unknown_host">域名解析失败</string>
<string name="brsdk_connect_timeout">网络连接超时</string>
<string name="brsdk_noroute_tohost">无法连接远程地址</string>
<string name="brsdk_ssl_error">连接被重置</string>
<string name="brsdk_ssl_handshake">连接被拒绝</string>
<string name="brsdk_ssl_protocol">连接协议异常</string>
<string name="brsdk_interrupted_io">连接被关闭</string>
<string name="brsdk_connect_error">连接失败</string>
<string name="brsdk_detect_text">检测</string>
<string name="brsdk_auto_failure">登录授权失败</string>
<string name="brsdk_role_invalid">无效的角色信息</string>
<string name="brsdk_auth_invalid">登录授权失败</string>
<string name="brsdk_hide_floating">隐藏悬浮球</string>
<string name="brsdk_floating_removed">悬浮球已隐藏,摇一摇手机重新显示</string>
<string name="brsdk_floating_showing">悬浮球已显示</string>
<string name="brsdk_permission">权限申请</string>
<string name="brsdk_empty_permission">未选择允许申请的权限</string>
<color name="brsdk_theme">#FF9800</color>
<color name="brsdk_theme10">#1AFF9800</color>
<color name="brsdk_theme50">#80FF9800</color>
<color name="brsdk_black75">#BF000000</color>
<color name="brsdk_black60">#99000000</color>
<color name="brsdk_black50">@color/brsdk_black60</color>
<color name="brsdk_gray">#CCCCCC</color>
<color name="brsdk_gray50">#80CCCCCC</color>
<color name="brsdk_white">#FFFFFF</color>
<color name="brsdk_666666">#666666</color>
<color name="brsdk_white90">#E6FFFFFF</color>
<color name="brsdk_white50">#80FFFFFF</color>
<color name="brsdk_444444">#444444</color>
<dimen name="brsdk_space_16dp">16dp</dimen>
<dimen name="brsdk_space_12dp">12dp</dimen>
<dimen name="brsdk_space_8dp">8dp</dimen>
<dimen name="brsdk_space_4dp">4dp</dimen>
<dimen name="brsdk_space_1dp">1dp</dimen>
<dimen name="brsdk_font_20sp">20sp</dimen>
<dimen name="brsdk_font_18sp">18sp</dimen>
<dimen name="brsdk_font_16sp">16sp</dimen>
<dimen name="brsdk_font_14sp">14sp</dimen>
<dimen name="brsdk_font_12sp">12sp</dimen>
<dimen name="brsdk_font_10sp">10sp</dimen>
<declare-styleable name="brsdkBRLoading">
<attr name="brsdkLdMinWidth" format="dimension|reference" />
<attr name="brsdkLdMaxWidth" format="dimension|reference" />
<attr name="brsdkLdMinHeight" format="dimension|reference" />
<attr name="brsdkLdMaxHeight" format="dimension|reference" />
<attr name="brsdkLdTintColor" format="color|reference" />
</declare-styleable>
<style name="brsdk_dialog_base" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item><!-- 无WindowFrame框 -->
<item name="android:windowNoTitle">true</item><!-- 显示Title -->
<item name="android:windowFullscreen">true</item><!-- 布局会被全屏 -->
<!-- false可渲染虚拟导航栏颜色,但是无法顶起布局 -->
<item name="android:windowIsFloating">true</item><!-- 浮现在Activity上 -->
<item name="android:backgroundDimAmount">0.5</item><!-- dialog区域外的背景透明度 -->
<item name="android:windowIsTranslucent">true</item><!-- 半透明 -->
<item name="android:backgroundDimEnabled">true</item><!-- dialog区域外开启半透明 -->
<item name="android:background">@android:color/transparent</item><!-- dialog背景 -->
<item name="android:windowSoftInputMode">stateHidden|adjustPan</item>
<item name="android:windowBackground">@android:color/transparent</item><!-- 显示区域背景 -->
<item name="android:windowContentOverlay">@null</item>
<!-- 这里确定输入法是否顶起布局 -->
<!--<item name="android:windowTranslucentStatus">true</item>-->
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@color/brsdk_black50</item>
</style>
<style name="brsdk_layout_root">
<item name="android:orientation">vertical</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:padding">@dimen/brsdk_space_16dp</item>
<item name="android:background">@drawable/brsdk_r8_black75</item>
<item name="android:gravity">center</item>
</style>
<style name="brsdk_loading_view">
<item name="brsdkLdMinWidth">24dp</item>
<item name="brsdkLdMaxWidth">24dp</item>
<item name="brsdkLdMinHeight">24dp</item>
<item name="brsdkLdMaxHeight">24dp</item>
<item name="brsdkLdTintColor">@color/brsdk_theme</item>
</style>
<style name="brsdk_transparent" parent="@android:style/Theme.NoTitleBar.Fullscreen">
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:background">@android:color/transparent</item>
<item name="android:windowFrame">@null</item>
<item name="android:title">null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:fullBright">@android:color/transparent</item>
<item name="android:fullDark">@android:color/transparent</item>
<item name="android:topBright">@android:color/transparent</item>
<item name="android:topDark">@android:color/transparent</item>
<item name="android:borderlessButtonStyle">@android:color/transparent</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
<style name="brsdk_top_in_out">
<item name="android:windowEnterAnimation">@anim/brsdk_top_translate_alpha_in</item>
<item name="android:windowExitAnimation">@anim/brsdk_top_translate_alpha_out</item>
</style>
<style name="brsdk_bottom_in_out">
<item name="android:windowEnterAnimation">@anim/brsdk_bottom_translate_alpha_in</item>
<item name="android:windowExitAnimation">@anim/brsdk_bottom_translate_alpha_out</item>
</style>
<style name="brsdk_left_in_out">
<item name="android:windowEnterAnimation">@anim/brsdk_left_translate_alpha_in</item>
<item name="android:windowExitAnimation">@anim/brsdk_left_translate_alpha_out</item>
</style>
<style name="brsdk_right_in_out">
<item name="android:windowEnterAnimation">@anim/brsdk_right_translate_alpha_in</item>
<item name="android:windowExitAnimation">@anim/brsdk_right_translate_alpha_out</item>
</style>
</resources>
\ No newline at end of file
... ...
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import argparse
import os
import os.path
import json
import os
import os.path
import codecs
import sys
import channel_action
if __name__ == "__main__":
parser = argparse.ArgumentParser(u"渠道专用操作")
parser.add_argument('-c', '--channel', help=u"渠道参数", action="store", dest="channel")
parser.add_argument('-d', '--decompileDir', help=u"反编译路径", action='store', dest="decompileDir")
parser.add_argument('-p', '--packageName', help=u"应用包名", action='store', dest="packageName")
args = parser.parse_args()
# print(args)
channel = json.loads(args.channel)
channel_action.execute(channel, args.decompileDir, args.packageName)
\ No newline at end of file
... ...
.class public final LXI/CA/XI/K0$XI;
.super Landroid/os/Handler;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = LXI/CA/XI/K0;->XI()V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = null
.end annotation
# direct methods
.method public constructor <init>(Landroid/os/Looper;)V
.locals 0
invoke-direct {p0, p1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
return-void
.end method
# virtual methods
.method public handleMessage(Landroid/os/Message;)V
.locals 2
iget v0, p1, Landroid/os/Message;->what:I
const/16 v1, 0xb
if-ne v0, v1, :cond_4
invoke-virtual {p1}, Landroid/os/Message;->getData()Landroid/os/Bundle;
move-result-object v0
const-string v1, "type"
invoke-virtual {v0, v1}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
move-result v0
invoke-virtual {p1}, Landroid/os/Message;->getData()Landroid/os/Bundle;
move-result-object p1
const-string v1, "appid"
invoke-virtual {p1, v1}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
.line 1
:try_start_0
sget-object v1, LXI/CA/XI/K0;->CV:LXI/CA/XI/XI;
.line 2
invoke-virtual {v1, v0, p1}, LXI/CA/XI/XI;->XI(ILjava/lang/String;)Ljava/lang/String;
move-result-object p1
if-eqz v0, :cond_2
const/4 v1, 0x1
if-eq v0, v1, :cond_1
const/4 v1, 0x2
if-eq v0, v1, :cond_0
goto :goto_0
:cond_0
if-eqz p1, :cond_3
.line 3
sput-object p1, LXI/CA/XI/K0;->cs:Ljava/lang/String;
goto :goto_0
:cond_1
if-eqz p1, :cond_3
.line 4
sput-object p1, LXI/CA/XI/K0;->bs:Ljava/lang/String;
goto :goto_0
.line 5
:cond_2
sput-object p1, LXI/CA/XI/K0;->WI:Ljava/lang/String;
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception p1
.line 6
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "readException:"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/Exception;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
:cond_3
:goto_0
sget-object p1, LXI/CA/XI/K0;->XI:Landroid/content/Context;
sget-object p1, LXI/CA/XI/K0;->vs:Ljava/lang/Object;
monitor-enter p1
sget-object v0, LXI/CA/XI/K0;->vs:Ljava/lang/Object;
:try_start_1
invoke-virtual {v0}, Ljava/lang/Object;->notify()V
monitor-exit p1
goto :goto_1
:catchall_0
move-exception v0
monitor-exit p1
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw v0
:cond_4
:goto_1
return-void
.end method
... ...
.class public LXI/CA/XI/K0;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static CA:LXI/CA/XI/kM; = null
.field public static volatile CV:LXI/CA/XI/XI; = null
.field public static FL:Landroid/os/Handler; = null
.field public static J9:Landroid/os/HandlerThread; = null
.field public static K0:Z = false
.field public static WI:Ljava/lang/String;
.field public static XI:Landroid/content/Context;
.field public static bs:Ljava/lang/String;
.field public static cs:Ljava/lang/String;
.field public static kM:LXI/CA/XI/kM;
.field public static volatile q6:LXI/CA/XI/K0;
.field public static vs:Ljava/lang/Object;
.field public static xo:LXI/CA/XI/kM;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, LXI/CA/XI/K0;->vs:Ljava/lang/Object;
return-void
.end method
.method public constructor <init>()V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
invoke-static {}, LXI/CA/XI/K0;->XI()V
new-instance v0, LXI/CA/XI/XI;
sget-object v1, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-direct {v0, v1}, LXI/CA/XI/XI;-><init>(Landroid/content/Context;)V
sput-object v0, LXI/CA/XI/K0;->CV:LXI/CA/XI/XI;
return-void
.end method
.method public static K0()Z
.locals 9
const-string v0, "0"
sget-boolean v1, LXI/CA/XI/K0;->K0:Z
if-nez v1, :cond_0
.line 1
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x1c
if-lt v1, v2, :cond_0
const-string v1, "persist.sys.identifierid.supported"
:try_start_0
const-string v2, "android.os.SystemProperties"
.line 2
invoke-static {v2}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v2
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
const-string v3, "get"
const/4 v4, 0x2
:try_start_1
new-array v5, v4, [Ljava/lang/Class;
const-class v6, Ljava/lang/String;
const/4 v7, 0x0
aput-object v6, v5, v7
const-class v6, Ljava/lang/String;
const/4 v8, 0x1
aput-object v6, v5, v8
invoke-virtual {v2, v3, v5}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v3
new-array v4, v4, [Ljava/lang/Object;
aput-object v1, v4, v7
aput-object v0, v4, v8
invoke-virtual {v3, v2, v4}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
:try_end_1
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0
.catchall {:try_start_1 .. :try_end_1} :catchall_0
move-object v0, v1
:catch_0
:catchall_0
const-string v1, "1"
.line 3
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
sput-boolean v0, LXI/CA/XI/K0;->K0:Z
.line 4
:cond_0
sget-boolean v0, LXI/CA/XI/K0;->K0:Z
return v0
.end method
.method public static XI(Landroid/content/Context;)LXI/CA/XI/K0;
.locals 2
invoke-static {}, LXI/CA/XI/K0;->K0()Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_0
return-object v1
:cond_0
sget-object v0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
if-nez v0, :cond_3
if-nez p0, :cond_1
return-object v1
:cond_1
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
if-nez v0, :cond_2
goto :goto_0
:cond_2
move-object p0, v0
:goto_0
sput-object p0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
:cond_3
sget-object p0, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
if-nez p0, :cond_5
const-class p0, LXI/CA/XI/K0;
monitor-enter p0
:try_start_0
sget-object v0, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
if-nez v0, :cond_4
new-instance v0, LXI/CA/XI/K0;
invoke-direct {v0}, LXI/CA/XI/K0;-><init>()V
sput-object v0, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
:cond_4
monitor-exit p0
goto :goto_1
:catchall_0
move-exception v0
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v0
:cond_5
:goto_1
sget-object p0, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
return-object p0
.end method
.method public static XI()V
.locals 2
new-instance v0, Landroid/os/HandlerThread;
const-string v1, "SqlWorkThread"
invoke-direct {v0, v1}, Landroid/os/HandlerThread;-><init>(Ljava/lang/String;)V
sput-object v0, LXI/CA/XI/K0;->J9:Landroid/os/HandlerThread;
invoke-virtual {v0}, Landroid/os/HandlerThread;->start()V
new-instance v0, LXI/CA/XI/K0$XI;
sget-object v1, LXI/CA/XI/K0;->J9:Landroid/os/HandlerThread;
invoke-virtual {v1}, Landroid/os/HandlerThread;->getLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, LXI/CA/XI/K0$XI;-><init>(Landroid/os/Looper;)V
sput-object v0, LXI/CA/XI/K0;->FL:Landroid/os/Handler;
return-void
.end method
.method public static declared-synchronized XI(Landroid/content/Context;ILjava/lang/String;)V
.locals 6
const-class v0, LXI/CA/XI/K0;
monitor-enter v0
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v1
const/4 v2, 0x1
const/4 v3, 0x0
if-eqz p1, :cond_4
const/16 v4, 0x1c
const/16 v5, 0x1d
if-eq p1, v2, :cond_2
const/4 v2, 0x2
if-eq p1, v2, :cond_0
goto/16 :goto_1
:cond_0
sget-object p1, LXI/CA/XI/K0;->CA:LXI/CA/XI/kM;
if-nez p1, :cond_5
sget p1, Landroid/os/Build$VERSION;->SDK_INT:I
if-lt p1, v5, :cond_1
new-instance p1, LXI/CA/XI/kM;
sget-object p2, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
invoke-direct {p1, p2, v2, v1}, LXI/CA/XI/kM;-><init>(LXI/CA/XI/K0;ILjava/lang/String;)V
sput-object p1, LXI/CA/XI/K0;->CA:LXI/CA/XI/kM;
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string p2, "content://com.vivo.vms.IdProvider/IdentifierId/"
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
sget-object p2, LXI/CA/XI/K0;->CA:LXI/CA/XI/kM;
:goto_0
invoke-virtual {p0, p1, v3, p2}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V
goto/16 :goto_1
:cond_1
if-ne p1, v4, :cond_5
new-instance p1, LXI/CA/XI/kM;
sget-object v1, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
invoke-direct {p1, v1, v2, p2}, LXI/CA/XI/kM;-><init>(LXI/CA/XI/K0;ILjava/lang/String;)V
sput-object p1, LXI/CA/XI/K0;->CA:LXI/CA/XI/kM;
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "content://com.vivo.vms.IdProvider/IdentifierId/AAID_"
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
sget-object p2, LXI/CA/XI/K0;->CA:LXI/CA/XI/kM;
goto :goto_0
:cond_2
sget-object p1, LXI/CA/XI/K0;->xo:LXI/CA/XI/kM;
if-nez p1, :cond_5
sget p1, Landroid/os/Build$VERSION;->SDK_INT:I
if-lt p1, v5, :cond_3
new-instance p1, LXI/CA/XI/kM;
sget-object p2, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
invoke-direct {p1, p2, v2, v1}, LXI/CA/XI/kM;-><init>(LXI/CA/XI/K0;ILjava/lang/String;)V
sput-object p1, LXI/CA/XI/K0;->xo:LXI/CA/XI/kM;
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string p2, "content://com.vivo.vms.IdProvider/IdentifierId/VAID_"
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
sget-object p2, LXI/CA/XI/K0;->xo:LXI/CA/XI/kM;
goto :goto_0
:cond_3
if-ne p1, v4, :cond_5
new-instance p1, LXI/CA/XI/kM;
sget-object v1, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
invoke-direct {p1, v1, v2, p2}, LXI/CA/XI/kM;-><init>(LXI/CA/XI/K0;ILjava/lang/String;)V
sput-object p1, LXI/CA/XI/K0;->xo:LXI/CA/XI/kM;
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "content://com.vivo.vms.IdProvider/IdentifierId/VAID_"
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
sget-object p2, LXI/CA/XI/K0;->xo:LXI/CA/XI/kM;
goto :goto_0
:cond_4
sget-object p1, LXI/CA/XI/K0;->kM:LXI/CA/XI/kM;
if-nez p1, :cond_5
new-instance p1, LXI/CA/XI/kM;
sget-object p2, LXI/CA/XI/K0;->q6:LXI/CA/XI/K0;
const/4 v1, 0x0
invoke-direct {p1, p2, v3, v1}, LXI/CA/XI/kM;-><init>(LXI/CA/XI/K0;ILjava/lang/String;)V
sput-object p1, LXI/CA/XI/K0;->kM:LXI/CA/XI/kM;
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
const-string p1, "content://com.vivo.vms.IdProvider/IdentifierId/OAID"
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
sget-object p2, LXI/CA/XI/K0;->kM:LXI/CA/XI/kM;
invoke-virtual {p0, p1, v2, p2}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:cond_5
:goto_1
monitor-exit v0
return-void
:catchall_0
move-exception p0
monitor-exit v0
throw p0
.end method
# virtual methods
.method public K0(ILjava/lang/String;)V
.locals 3
sget-object v0, LXI/CA/XI/K0;->FL:Landroid/os/Handler;
invoke-virtual {v0}, Landroid/os/Handler;->obtainMessage()Landroid/os/Message;
move-result-object v0
const/16 v1, 0xb
iput v1, v0, Landroid/os/Message;->what:I
new-instance v1, Landroid/os/Bundle;
invoke-direct {v1}, Landroid/os/Bundle;-><init>()V
const-string v2, "type"
invoke-virtual {v1, v2, p1}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V
const/4 v2, 0x1
if-eq p1, v2, :cond_0
const/4 v2, 0x2
if-ne p1, v2, :cond_1
:cond_0
const-string p1, "appid"
invoke-virtual {v1, p1, p2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
:cond_1
invoke-virtual {v0, v1}, Landroid/os/Message;->setData(Landroid/os/Bundle;)V
sget-object p1, LXI/CA/XI/K0;->FL:Landroid/os/Handler;
invoke-virtual {p1, v0}, Landroid/os/Handler;->sendMessage(Landroid/os/Message;)Z
return-void
.end method
.method public final XI(ILjava/lang/String;)V
.locals 3
sget-object v0, LXI/CA/XI/K0;->vs:Ljava/lang/Object;
monitor-enter v0
:try_start_0
invoke-virtual {p0, p1, p2}, LXI/CA/XI/K0;->K0(ILjava/lang/String;)V
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:try_start_1
sget-object p1, LXI/CA/XI/K0;->vs:Ljava/lang/Object;
const-wide/16 v1, 0x7d0
invoke-virtual {p1, v1, v2}, Ljava/lang/Object;->wait(J)V
:try_end_1
.catch Ljava/lang/InterruptedException; {:try_start_1 .. :try_end_1} :catch_0
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:catch_0
:try_start_2
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
monitor-exit v0
return-void
:catchall_0
move-exception p1
monitor-exit v0
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
throw p1
.end method
... ...
.class public LXI/CA/XI/XI;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public XI:Landroid/content/Context;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, LXI/CA/XI/XI;->XI:Landroid/content/Context;
return-void
.end method
# virtual methods
.method public XI(ILjava/lang/String;)Ljava/lang/String;
.locals 7
const/4 v0, 0x0
if-eqz p1, :cond_3
const/4 v1, 0x1
if-eq p1, v1, :cond_2
const/4 v1, 0x2
if-eq p1, v1, :cond_1
const/4 p2, 0x4
if-eq p1, p2, :cond_0
move-object v2, v0
goto :goto_2
:cond_0
const-string p1, "content://com.vivo.vms.IdProvider/IdentifierId/OAIDSTATUS"
goto :goto_1
:cond_1
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "content://com.vivo.vms.IdProvider/IdentifierId/AAID_"
goto :goto_0
:cond_2
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "content://com.vivo.vms.IdProvider/IdentifierId/VAID_"
:goto_0
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
goto :goto_1
:cond_3
const-string p1, "content://com.vivo.vms.IdProvider/IdentifierId/OAID"
:goto_1
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
move-object v2, p1
:goto_2
:try_start_0
iget-object p1, p0, LXI/CA/XI/XI;->XI:Landroid/content/Context;
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const/4 v3, 0x0
const/4 v4, 0x0
const/4 v5, 0x0
const/4 v6, 0x0
invoke-virtual/range {v1 .. v6}, Landroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
move-result-object p1
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
if-eqz p1, :cond_5
:try_start_1
invoke-interface {p1}, Landroid/database/Cursor;->moveToNext()Z
move-result p2
if-eqz p2, :cond_4
const-string p2, "value"
invoke-interface {p1, p2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result p2
invoke-interface {p1, p2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object p2
move-object v0, p2
:cond_4
invoke-interface {p1}, Landroid/database/Cursor;->close()V
:try_end_1
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
goto :goto_3
:catchall_0
move-exception p2
goto :goto_4
:cond_5
:goto_3
if-eqz p1, :cond_7
goto :goto_5
:catchall_1
move-exception p2
move-object p1, v0
:goto_4
if-eqz p1, :cond_6
invoke-interface {p1}, Landroid/database/Cursor;->close()V
:cond_6
throw p2
:catch_0
move-object p1, v0
:catch_1
if-eqz p1, :cond_7
:goto_5
invoke-interface {p1}, Landroid/database/Cursor;->close()V
:cond_7
return-object v0
.end method
... ...
.class public LXI/CA/XI/kM;
.super Landroid/database/ContentObserver;
.source "SourceFile"
# instance fields
.field public K0:I
.field public XI:Ljava/lang/String;
.field public kM:LXI/CA/XI/K0;
# direct methods
.method public constructor <init>(LXI/CA/XI/K0;ILjava/lang/String;)V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, v0}, Landroid/database/ContentObserver;-><init>(Landroid/os/Handler;)V
iput-object p1, p0, LXI/CA/XI/kM;->kM:LXI/CA/XI/K0;
iput p2, p0, LXI/CA/XI/kM;->K0:I
iput-object p3, p0, LXI/CA/XI/kM;->XI:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public onChange(Z)V
.locals 2
iget-object p1, p0, LXI/CA/XI/kM;->kM:LXI/CA/XI/K0;
if-eqz p1, :cond_0
iget v0, p0, LXI/CA/XI/kM;->K0:I
iget-object v1, p0, LXI/CA/XI/kM;->XI:Ljava/lang/String;
invoke-virtual {p1, v0, v1}, LXI/CA/XI/K0;->K0(ILjava/lang/String;)V
:cond_0
return-void
.end method
... ...
.class public LXI/K0/XI/XI$K0$K0;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = LXI/K0/XI/XI$K0;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "K0"
.end annotation
# static fields
.field public static final XI:LXI/K0/XI/XI$K0;
# direct methods
.method public static constructor <clinit>()V
.locals 1
new-instance v0, LXI/K0/XI/XI$K0;
invoke-direct {v0}, LXI/K0/XI/XI$K0;-><init>()V
sput-object v0, LXI/K0/XI/XI$K0$K0;->XI:LXI/K0/XI/XI$K0;
return-void
.end method
... ...
.class public LXI/K0/XI/XI$K0$XI;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroid/content/ServiceConnection;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = LXI/K0/XI/XI$K0;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic XI:LXI/K0/XI/XI$K0;
# direct methods
.method public constructor <init>(LXI/K0/XI/XI$K0;)V
.locals 0
iput-object p1, p0, LXI/K0/XI/XI$K0$XI;->XI:LXI/K0/XI/XI$K0;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V
.locals 2
iget-object p1, p0, LXI/K0/XI/XI$K0$XI;->XI:LXI/K0/XI/XI$K0;
.line 1
sget v0, LXI/K0/XI/XI$XI;->XI:I
if-nez p2, :cond_0
const/4 p2, 0x0
goto :goto_0
:cond_0
const-string v0, "com.heytap.openid.IOpenID"
invoke-interface {p2, v0}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
move-result-object v0
if-eqz v0, :cond_1
instance-of v1, v0, LXI/K0/XI/XI;
if-eqz v1, :cond_1
move-object p2, v0
check-cast p2, LXI/K0/XI/XI;
goto :goto_0
:cond_1
new-instance v0, LXI/K0/XI/XI$XI$XI;
invoke-direct {v0, p2}, LXI/K0/XI/XI$XI$XI;-><init>(Landroid/os/IBinder;)V
move-object p2, v0
.line 2
:goto_0
iput-object p2, p1, LXI/K0/XI/XI$K0;->XI:LXI/K0/XI/XI;
iget-object p1, p0, LXI/K0/XI/XI$K0$XI;->XI:LXI/K0/XI/XI$K0;
iget-object p1, p1, LXI/K0/XI/XI$K0;->xo:Ljava/lang/Object;
monitor-enter p1
:try_start_0
iget-object p2, p0, LXI/K0/XI/XI$K0$XI;->XI:LXI/K0/XI/XI$K0;
iget-object p2, p2, LXI/K0/XI/XI$K0;->xo:Ljava/lang/Object;
invoke-virtual {p2}, Ljava/lang/Object;->notify()V
monitor-exit p1
return-void
:catchall_0
move-exception p2
monitor-exit p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p2
.end method
.method public onServiceDisconnected(Landroid/content/ComponentName;)V
.locals 1
iget-object p1, p0, LXI/K0/XI/XI$K0$XI;->XI:LXI/K0/XI/XI$K0;
const/4 v0, 0x0
iput-object v0, p1, LXI/K0/XI/XI$K0;->XI:LXI/K0/XI/XI;
return-void
.end method
... ...
.class public LXI/K0/XI/XI$K0;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
LXI/K0/XI/XI$K0$K0;
}
.end annotation
# instance fields
.field public CA:Landroid/content/ServiceConnection;
.field public K0:Ljava/lang/String;
.field public XI:LXI/K0/XI/XI;
.field public kM:Ljava/lang/String;
.field public final xo:Ljava/lang/Object;
# direct methods
.method public synthetic constructor <init>()V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput-object v0, p0, LXI/K0/XI/XI$K0;->XI:LXI/K0/XI/XI;
iput-object v0, p0, LXI/K0/XI/XI$K0;->K0:Ljava/lang/String;
iput-object v0, p0, LXI/K0/XI/XI$K0;->kM:Ljava/lang/String;
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
iput-object v0, p0, LXI/K0/XI/XI$K0;->xo:Ljava/lang/Object;
new-instance v0, LXI/K0/XI/XI$K0$XI;
invoke-direct {v0, p0}, LXI/K0/XI/XI$K0$XI;-><init>(LXI/K0/XI/XI$K0;)V
iput-object v0, p0, LXI/K0/XI/XI$K0;->CA:Landroid/content/ServiceConnection;
return-void
.end method
# virtual methods
.method public final K0(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
.locals 9
iget-object v0, p0, LXI/K0/XI/XI$K0;->K0:Ljava/lang/String;
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_0
invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, LXI/K0/XI/XI$K0;->K0:Ljava/lang/String;
:cond_0
iget-object v0, p0, LXI/K0/XI/XI$K0;->kM:Ljava/lang/String;
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
const/4 v1, 0x1
const/4 v2, 0x0
if-eqz v0, :cond_3
iget-object v0, p0, LXI/K0/XI/XI$K0;->K0:Ljava/lang/String;
const/4 v3, 0x0
:try_start_0
invoke-virtual {p1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v4
const/16 v5, 0x40
invoke-virtual {v4, v0, v5}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v0
iget-object v0, v0, Landroid/content/pm/PackageInfo;->signatures:[Landroid/content/pm/Signature;
:try_end_0
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception v0
invoke-virtual {v0}, Landroid/content/pm/PackageManager$NameNotFoundException;->printStackTrace()V
move-object v0, v3
:goto_0
if-eqz v0, :cond_2
array-length v4, v0
if-lez v4, :cond_2
aget-object v0, v0, v2
const-string v4, "SHA1"
invoke-virtual {v0}, Landroid/content/pm/Signature;->toByteArray()[B
move-result-object v0
:try_start_1
invoke-static {v4}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v4
if-eqz v4, :cond_2
invoke-virtual {v4, v0}, Ljava/security/MessageDigest;->digest([B)[B
move-result-object v0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
array-length v5, v0
move v6, v2
:goto_1
if-ge v6, v5, :cond_1
aget-byte v7, v0, v6
and-int/lit16 v7, v7, 0xff
or-int/lit16 v7, v7, 0x100
invoke-static {v7}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v7
const/4 v8, 0x3
invoke-virtual {v7, v1, v8}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v7
invoke-virtual {v4, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v6, v6, 0x1
goto :goto_1
:cond_1
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
:try_end_1
.catch Ljava/security/NoSuchAlgorithmException; {:try_start_1 .. :try_end_1} :catch_1
goto :goto_2
:catch_1
move-exception v0
invoke-virtual {v0}, Ljava/security/NoSuchAlgorithmException;->printStackTrace()V
:cond_2
:goto_2
iput-object v3, p0, LXI/K0/XI/XI$K0;->kM:Ljava/lang/String;
:cond_3
iget-object v0, p0, LXI/K0/XI/XI$K0;->XI:LXI/K0/XI/XI;
const-string v3, ""
if-nez v0, :cond_4
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, ":OpenIDHelper"
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
return-object v3
:cond_4
iget-object p1, p0, LXI/K0/XI/XI$K0;->K0:Ljava/lang/String;
iget-object v4, p0, LXI/K0/XI/XI$K0;->kM:Ljava/lang/String;
check-cast v0, LXI/K0/XI/XI$XI$XI;
.line 1
invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
move-result-object v5
invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
move-result-object v6
const-string v7, "com.heytap.openid.IOpenID"
:try_start_2
invoke-virtual {v5, v7}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
invoke-virtual {v5, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
invoke-virtual {v5, v4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
invoke-virtual {v5, p2}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
iget-object p1, v0, LXI/K0/XI/XI$XI$XI;->XI:Landroid/os/IBinder;
invoke-interface {p1, v1, v5, v6, v2}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
invoke-virtual {v6}, Landroid/os/Parcel;->readException()V
invoke-virtual {v6}, Landroid/os/Parcel;->readString()Ljava/lang/String;
move-result-object p1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
invoke-virtual {v6}, Landroid/os/Parcel;->recycle()V
invoke-virtual {v5}, Landroid/os/Parcel;->recycle()V
.line 2
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result p2
if-eqz p2, :cond_5
move-object p1, v3
:cond_5
return-object p1
:catchall_0
move-exception p1
.line 3
invoke-virtual {v6}, Landroid/os/Parcel;->recycle()V
invoke-virtual {v5}, Landroid/os/Parcel;->recycle()V
throw p1
.end method
.method public declared-synchronized XI(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
.locals 4
monitor-enter p0
:try_start_0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "getOpenID:"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v0
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
if-ne v0, v1, :cond_0
const-string p1, ""
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
monitor-exit p0
return-object p1
:cond_0
:try_start_1
iget-object v0, p0, LXI/K0/XI/XI$K0;->XI:LXI/K0/XI/XI;
if-nez v0, :cond_3
.line 1
new-instance v0, Landroid/content/Intent;
invoke-direct {v0}, Landroid/content/Intent;-><init>()V
new-instance v1, Landroid/content/ComponentName;
const-string v2, "com.heytap.openid"
const-string v3, "com.heytap.openid.IdentifyService"
invoke-direct {v1, v2, v3}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v0, v1}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
const-string v1, "action.com.heytap.openid.OPEN_ID_SERVICE"
invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
iget-object v1, p0, LXI/K0/XI/XI$K0;->CA:Landroid/content/ServiceConnection;
const/4 v2, 0x1
invoke-virtual {p1, v0, v1, v2}, Landroid/content/Context;->bindService(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z
move-result v0
if-eqz v0, :cond_1
iget-object v0, p0, LXI/K0/XI/XI$K0;->xo:Ljava/lang/Object;
monitor-enter v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_1
:try_start_2
iget-object v1, p0, LXI/K0/XI/XI$K0;->xo:Ljava/lang/Object;
const-wide/16 v2, 0xbb8
invoke-virtual {v1, v2, v3}, Ljava/lang/Object;->wait(J)V
:try_end_2
.catch Ljava/lang/InterruptedException; {:try_start_2 .. :try_end_2} :catch_0
.catchall {:try_start_2 .. :try_end_2} :catchall_0
goto :goto_0
:catchall_0
move-exception p1
goto :goto_1
:catch_0
:goto_0
:try_start_3
monitor-exit v0
goto :goto_2
:goto_1
monitor-exit v0
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_0
:try_start_4
throw p1
.line 2
:cond_1
:goto_2
iget-object v0, p0, LXI/K0/XI/XI$K0;->XI:LXI/K0/XI/XI;
if-nez v0, :cond_2
const-string p1, ""
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_1
monitor-exit p0
return-object p1
:cond_2
:try_start_5
invoke-virtual {p0, p1, p2}, LXI/K0/XI/XI$K0;->K0(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
:try_end_5
.catch Landroid/os/RemoteException; {:try_start_5 .. :try_end_5} :catch_1
.catchall {:try_start_5 .. :try_end_5} :catchall_1
monitor-exit p0
return-object p1
:catch_1
:try_start_6
const-string p1, ""
:try_end_6
.catchall {:try_start_6 .. :try_end_6} :catchall_1
monitor-exit p0
return-object p1
:cond_3
:try_start_7
invoke-virtual {p0, p1, p2}, LXI/K0/XI/XI$K0;->K0(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
:try_end_7
.catch Landroid/os/RemoteException; {:try_start_7 .. :try_end_7} :catch_2
.catchall {:try_start_7 .. :try_end_7} :catchall_1
monitor-exit p0
return-object p1
:catch_2
:try_start_8
const-string p1, ""
:try_end_8
.catchall {:try_start_8 .. :try_end_8} :catchall_1
monitor-exit p0
return-object p1
:catchall_1
move-exception p1
monitor-exit p0
throw p1
.end method
... ...
.class public LXI/K0/XI/XI$XI$XI;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements LXI/K0/XI/XI;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = LXI/K0/XI/XI$XI;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "XI"
.end annotation
# instance fields
.field public XI:Landroid/os/IBinder;
# direct methods
.method public constructor <init>(Landroid/os/IBinder;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, LXI/K0/XI/XI$XI$XI;->XI:Landroid/os/IBinder;
return-void
.end method
# virtual methods
.method public asBinder()Landroid/os/IBinder;
.locals 1
iget-object v0, p0, LXI/K0/XI/XI$XI$XI;->XI:Landroid/os/IBinder;
return-object v0
.end method
... ...
.class public abstract LXI/K0/XI/XI$XI;
.super Landroid/os/Binder;
.source "SourceFile"
# interfaces
.implements LXI/K0/XI/XI;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = LXI/K0/XI/XI;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "XI"
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
LXI/K0/XI/XI$XI$XI;
}
.end annotation
# static fields
.field public static final synthetic XI:I
... ...
.class public interface abstract LXI/K0/XI/XI;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroid/os/IInterface;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
LXI/K0/XI/XI$XI;
}
.end annotation
... ...
.class public LXI/XI/K0/K0$XI;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Landroid/content/ServiceConnection;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = LXI/XI/K0/K0;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic XI:LXI/XI/K0/K0;
# direct methods
.method public constructor <init>(LXI/XI/K0/K0;)V
.locals 0
iput-object p1, p0, LXI/XI/K0/K0$XI;->XI:LXI/XI/K0/K0;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onServiceConnected(Landroid/content/ComponentName;Landroid/os/IBinder;)V
.locals 2
iget-object p1, p0, LXI/XI/K0/K0$XI;->XI:LXI/XI/K0/K0;
.line 1
sget v0, LXI/XI/XI/XI$XI;->XI:I
if-nez p2, :cond_0
const/4 p2, 0x0
goto :goto_0
:cond_0
const-string v0, "com.android.creator.IdsSupplier"
invoke-interface {p2, v0}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
move-result-object v0
if-eqz v0, :cond_1
instance-of v1, v0, LXI/XI/XI/XI;
if-eqz v1, :cond_1
move-object p2, v0
check-cast p2, LXI/XI/XI/XI;
goto :goto_0
:cond_1
new-instance v0, LXI/XI/XI/XI$XI$XI;
invoke-direct {v0, p2}, LXI/XI/XI/XI$XI$XI;-><init>(Landroid/os/IBinder;)V
move-object p2, v0
.line 2
:goto_0
iput-object p2, p1, LXI/XI/K0/K0;->K0:LXI/XI/XI/XI;
.line 3
iget-object p1, p0, LXI/XI/K0/K0$XI;->XI:LXI/XI/K0/K0;
.line 4
iget-object p1, p1, LXI/XI/K0/K0;->kM:LXI/XI/K0/xo;
const/4 p2, 0x1
.line 5
invoke-interface {p1, p2}, LXI/XI/K0/xo;->connectSuccess(Z)V
return-void
.end method
.method public onServiceDisconnected(Landroid/content/ComponentName;)V
.locals 1
iget-object p1, p0, LXI/XI/K0/K0$XI;->XI:LXI/XI/K0/K0;
const/4 v0, 0x0
.line 1
iput-object v0, p1, LXI/XI/K0/K0;->K0:LXI/XI/XI/XI;
return-void
.end method
... ...
.class public LXI/XI/K0/K0;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements LXI/XI/K0/kM;
# instance fields
.field public K0:LXI/XI/XI/XI;
.field public XI:Landroid/content/Context;
.field public kM:LXI/XI/K0/xo;
.field public xo:Landroid/content/ServiceConnection;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, LXI/XI/K0/K0$XI;
invoke-direct {v0, p0}, LXI/XI/K0/K0$XI;-><init>(LXI/XI/K0/K0;)V
iput-object v0, p0, LXI/XI/K0/K0;->xo:Landroid/content/ServiceConnection;
iput-object p1, p0, LXI/XI/K0/K0;->XI:Landroid/content/Context;
return-void
.end method
# virtual methods
.method public XI()Z
.locals 3
iget-object v0, p0, LXI/XI/K0/K0;->K0:LXI/XI/XI/XI;
if-eqz v0, :cond_0
:try_start_0
invoke-interface {v0}, LXI/XI/XI/XI;->isSupported()Z
move-result v0
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception v0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "isSupported exception:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Landroid/os/RemoteException;->getMessage()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
:cond_0
const/4 v0, 0x0
:goto_0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "isSupported:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, LXI/XI/K0/K0;->K0:LXI/XI/XI/XI;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "isSupported ret:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
return v0
.end method
... ...
.class public LXI/XI/K0/XI;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static K0:Z = false
.field public static XI:Z = false
# direct methods
.method public static CA(Landroid/content/Context;)Landroid/content/Context;
.locals 1
if-eqz p0, :cond_0
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
if-eqz v0, :cond_0
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
:cond_0
return-object p0
.end method
.method public static K0(Landroid/content/Context;)Ljava/lang/String;
.locals 2
invoke-static {p0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;)LXI/CA/XI/K0;
move-result-object p0
const/4 v0, 0x0
if-nez p0, :cond_0
goto :goto_0
.line 1
:cond_0
sget-object v1, LXI/CA/XI/K0;->WI:Ljava/lang/String;
if-eqz v1, :cond_1
move-object v0, v1
goto :goto_0
:cond_1
const/4 v1, 0x0
invoke-virtual {p0, v1, v0}, LXI/CA/XI/K0;->XI(ILjava/lang/String;)V
sget-object p0, LXI/CA/XI/K0;->kM:LXI/CA/XI/kM;
if-nez p0, :cond_2
sget-object p0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-static {p0, v1, v0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;ILjava/lang/String;)V
:cond_2
sget-object v0, LXI/CA/XI/K0;->WI:Ljava/lang/String;
:goto_0
return-object v0
.end method
.method public static K0(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
.locals 1
invoke-static {p0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;)LXI/CA/XI/K0;
move-result-object p0
if-nez p0, :cond_0
const/4 p0, 0x0
goto :goto_0
.line 2
:cond_0
sget-object v0, LXI/CA/XI/K0;->bs:Ljava/lang/String;
if-eqz v0, :cond_1
move-object p0, v0
goto :goto_0
:cond_1
const/4 v0, 0x1
invoke-virtual {p0, v0, p1}, LXI/CA/XI/K0;->XI(ILjava/lang/String;)V
sget-object p0, LXI/CA/XI/K0;->xo:LXI/CA/XI/kM;
if-nez p0, :cond_2
sget-object p0, LXI/CA/XI/K0;->bs:Ljava/lang/String;
if-eqz p0, :cond_2
sget-object p0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-static {p0, v0, p1}, LXI/CA/XI/K0;->XI(Landroid/content/Context;ILjava/lang/String;)V
:cond_2
sget-object p0, LXI/CA/XI/K0;->bs:Ljava/lang/String;
:goto_0
return-object p0
.end method
.method public static XI(Landroid/content/Context;)Ljava/lang/String;
.locals 2
invoke-static {p0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;)LXI/CA/XI/K0;
move-result-object p0
if-nez p0, :cond_0
goto :goto_0
.line 2
:cond_0
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1c
if-ne v0, v1, :cond_1
:goto_0
const/4 p0, 0x0
goto :goto_1
:cond_1
sget-object v0, LXI/CA/XI/K0;->cs:Ljava/lang/String;
if-eqz v0, :cond_2
move-object p0, v0
goto :goto_1
:cond_2
sget-object v0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
const/4 v1, 0x2
invoke-virtual {p0, v1, v0}, LXI/CA/XI/K0;->XI(ILjava/lang/String;)V
sget-object p0, LXI/CA/XI/K0;->CA:LXI/CA/XI/kM;
if-nez p0, :cond_3
sget-object p0, LXI/CA/XI/K0;->cs:Ljava/lang/String;
if-eqz p0, :cond_3
sget-object p0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-static {p0, v1, v0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;ILjava/lang/String;)V
:cond_3
sget-object p0, LXI/CA/XI/K0;->cs:Ljava/lang/String;
:goto_1
return-object p0
.end method
.method public static XI(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
.locals 1
invoke-static {p0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;)LXI/CA/XI/K0;
move-result-object p0
if-nez p0, :cond_0
const/4 p0, 0x0
goto :goto_0
.line 1
:cond_0
sget-object v0, LXI/CA/XI/K0;->cs:Ljava/lang/String;
if-eqz v0, :cond_1
move-object p0, v0
goto :goto_0
:cond_1
const/4 v0, 0x2
invoke-virtual {p0, v0, p1}, LXI/CA/XI/K0;->XI(ILjava/lang/String;)V
sget-object p0, LXI/CA/XI/K0;->CA:LXI/CA/XI/kM;
if-nez p0, :cond_2
sget-object p0, LXI/CA/XI/K0;->cs:Ljava/lang/String;
if-eqz p0, :cond_2
sget-object p0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-static {p0, v0, p1}, LXI/CA/XI/K0;->XI(Landroid/content/Context;ILjava/lang/String;)V
:cond_2
sget-object p0, LXI/CA/XI/K0;->cs:Ljava/lang/String;
:goto_0
return-object p0
.end method
.method public static final XI()Z
.locals 5
const-string v0, "android.app.ActivityThread"
const/4 v1, 0x0
const/4 v2, 0x0
:try_start_0
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
const-string v3, "currentApplication"
:try_start_1
new-array v4, v2, [Ljava/lang/Class;
invoke-virtual {v0, v3, v4}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v0
const/4 v3, 0x1
invoke-virtual {v0, v3}, Ljava/lang/reflect/Method;->setAccessible(Z)V
new-array v3, v2, [Ljava/lang/Object;
invoke-virtual {v0, v1, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/content/Context;
:try_end_1
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0
goto :goto_0
:catch_0
move-exception v0
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "ActivityThread:currentApplication --> "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/Exception;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-object v0, v1
:goto_0
if-nez v0, :cond_0
return v2
:cond_0
invoke-static {}, LXI/xo/XI/XI/CA;->XI()LXI/xo/XI/XI/CA;
move-result-object v1
invoke-virtual {v1, v0, v2}, LXI/xo/XI/XI/CA;->XI(Landroid/content/Context;Z)Z
move-result v0
return v0
.end method
.method public static kM(Landroid/content/Context;)Ljava/lang/String;
.locals 2
invoke-static {p0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;)LXI/CA/XI/K0;
move-result-object p0
if-nez p0, :cond_0
goto :goto_0
.line 1
:cond_0
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1c
if-ne v0, v1, :cond_1
:goto_0
const/4 p0, 0x0
goto :goto_1
:cond_1
sget-object v0, LXI/CA/XI/K0;->bs:Ljava/lang/String;
if-eqz v0, :cond_2
move-object p0, v0
goto :goto_1
:cond_2
sget-object v0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
const/4 v1, 0x1
invoke-virtual {p0, v1, v0}, LXI/CA/XI/K0;->XI(ILjava/lang/String;)V
sget-object p0, LXI/CA/XI/K0;->xo:LXI/CA/XI/kM;
if-nez p0, :cond_3
sget-object p0, LXI/CA/XI/K0;->bs:Ljava/lang/String;
if-eqz p0, :cond_3
sget-object p0, LXI/CA/XI/K0;->XI:Landroid/content/Context;
invoke-static {p0, v1, v0}, LXI/CA/XI/K0;->XI(Landroid/content/Context;ILjava/lang/String;)V
:cond_3
sget-object p0, LXI/CA/XI/K0;->bs:Ljava/lang/String;
:goto_1
return-object p0
.end method
.method public static xo(Landroid/content/Context;)V
.locals 3
sget-boolean v0, LXI/XI/K0/XI;->XI:Z
if-nez v0, :cond_1
sget-object v0, LXI/K0/XI/XI$K0$K0;->XI:LXI/K0/XI/XI$K0;
invoke-static {p0}, LXI/XI/K0/XI;->CA(Landroid/content/Context;)Landroid/content/Context;
move-result-object p0
.line 1
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
const/4 v0, 0x0
const/4 v1, 0x1
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object p0
:try_end_0
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_0 .. :try_end_0} :catch_0
const-string v2, "com.heytap.openid"
:try_start_1
invoke-virtual {p0, v2, v0}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object p0
if-eqz p0, :cond_0
iget p0, p0, Landroid/content/pm/PackageInfo;->versionCode:I
:try_end_1
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_1 .. :try_end_1} :catch_0
if-lt p0, v1, :cond_0
move v0, v1
.line 2
:catch_0
:cond_0
sput-boolean v0, LXI/XI/K0/XI;->K0:Z
sput-boolean v1, LXI/XI/K0/XI;->XI:Z
:cond_1
return-void
.end method
... ...
.class public interface abstract LXI/XI/K0/kM;
.super Ljava/lang/Object;
.source "SourceFile"
... ...
.class public interface abstract LXI/XI/K0/xo;
.super Ljava/lang/Object;
.source "SourceFile"
# virtual methods
.method public abstract connectSuccess(Z)V
.end method
... ...