BUG修改,极光推送添加
parent
9c7fd037ad
commit
df9930f1ff
|
@ -19,6 +19,16 @@ android {
|
||||||
versionCode 1
|
versionCode 1
|
||||||
versionName "1.0"
|
versionName "1.0"
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
|
ndk {
|
||||||
|
// 设置支持的SO库架构
|
||||||
|
abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a'
|
||||||
|
}
|
||||||
|
|
||||||
|
manifestPlaceholders = [
|
||||||
|
JPUSH_PKGNAME: applicationId,
|
||||||
|
JPUSH_APPKEY : "2d2ceb987c93daf0a175f684", //JPush 上注册的包名对应的 Appkey.
|
||||||
|
JPUSH_CHANNEL: "developer-default", //暂时填写默认值即可.
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
android.applicationVariants.all { variant ->
|
android.applicationVariants.all { variant ->
|
||||||
|
@ -40,6 +50,7 @@ android {
|
||||||
buildFeatures {
|
buildFeatures {
|
||||||
viewBinding true
|
viewBinding true
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -73,5 +84,8 @@ dependencies {
|
||||||
implementation 'com.github.nanchen2251:CompressHelper:1.0.5'
|
implementation 'com.github.nanchen2251:CompressHelper:1.0.5'
|
||||||
implementation 'com.google.zxing:core:3.4.0'
|
implementation 'com.google.zxing:core:3.4.0'
|
||||||
implementation 'com.journeyapps:zxing-android-embedded:3.6.0'
|
implementation 'com.journeyapps:zxing-android-embedded:3.6.0'
|
||||||
|
// 此处以JPush 5.0.0 版本为例,5.0.0 版本开始可以自动拉取 JCore 包,无需另外配置
|
||||||
|
implementation 'cn.jiguang.sdk:jpush:5.0.0'
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
|
@ -6,8 +6,7 @@
|
||||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 在SDCard中创建与删除文件权限 -->
|
||||||
<!--在SDCard中创建与删除文件权限-->
|
|
||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
|
android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
|
||||||
tools:ignore="ProtectedPermissions" />
|
tools:ignore="ProtectedPermissions" />
|
||||||
|
@ -24,7 +23,6 @@
|
||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
|
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
|
||||||
tools:ignore="ScopedStorage" />
|
tools:ignore="ScopedStorage" />
|
||||||
|
|
||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.QUERY_ALL_PACKAGES"
|
android:name="android.permission.QUERY_ALL_PACKAGES"
|
||||||
tools:ignore="QueryAllPackagesPermission" />
|
tools:ignore="QueryAllPackagesPermission" />
|
||||||
|
@ -48,30 +46,56 @@
|
||||||
android:theme="@style/Theme.AfricanFinance"
|
android:theme="@style/Theme.AfricanFinance"
|
||||||
android:usesCleartextTraffic="true"
|
android:usesCleartextTraffic="true"
|
||||||
tools:targetApi="31">
|
tools:targetApi="31">
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.WebActivity"
|
android:name=".activity.WebActivity"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:windowSoftInputMode="stateAlwaysHidden|adjustResize" />
|
android:windowSoftInputMode="stateAlwaysHidden|adjustResize" />
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.LoginActivity"
|
android:name=".activity.LoginActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:screenOrientation="portrait">
|
android:screenOrientation="portrait"
|
||||||
|
android:windowSoftInputMode="stateAlwaysHidden|adjustResize">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN" />
|
<action android:name="android.intent.action.MAIN" />
|
||||||
|
|
||||||
<category android:name="android.intent.category.LAUNCHER" />
|
<category android:name="android.intent.category.LAUNCHER" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.MainActivity"
|
android:name=".activity.MainActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait"
|
||||||
|
android:windowSoftInputMode="stateAlwaysHidden|adjustResize" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".activity.CustomCaptureActivity"
|
android:name=".activity.CustomCaptureActivity"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
|
<!-- Since JCore2.0.0 Required SDK核心功能 -->
|
||||||
|
<!-- 可配置android:process参数将Service放在其他进程中;android:enabled属性不能是false -->
|
||||||
|
<!-- 这个是自定义Service,要继承极光JCommonService,可以在更多手机平台上使得推送通道保持的更稳定 -->
|
||||||
|
<service
|
||||||
|
android:name=".service.MyJpushService"
|
||||||
|
android:enabled="true"
|
||||||
|
android:exported="false"
|
||||||
|
android:process=":pushcore">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="cn.jiguang.user.service.action" />
|
||||||
|
</intent-filter>
|
||||||
|
</service>
|
||||||
|
<!-- Required since 3.0.7 -->
|
||||||
|
<!-- 新的 tag/alias 接口结果返回需要开发者配置一个自定的广播 -->
|
||||||
|
<!-- 3.3.0开始所有事件将通过该类回调 -->
|
||||||
|
<!-- 该广播需要继承 JPush 提供的 JPushMessageReceiver 类, 并如下新增一个 Intent-Filter -->
|
||||||
|
<receiver
|
||||||
|
android:name=".service.MyJpushReceiver"
|
||||||
|
android:enabled="true"
|
||||||
|
android:exported="false">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="cn.jpush.android.intent.RECEIVE_MESSAGE" />
|
||||||
|
<category android:name="com.cmx.wanhui" />
|
||||||
|
</intent-filter>
|
||||||
|
</receiver>
|
||||||
<provider
|
<provider
|
||||||
android:name="androidx.core.content.FileProvider"
|
android:name="androidx.core.content.FileProvider"
|
||||||
android:authorities="com.cmx.wanhui.fileProvider"
|
android:authorities="com.cmx.wanhui.fileProvider"
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
package com.cmx.wanhui.activity
|
package com.cmx.wanhui.activity
|
||||||
|
|
||||||
import android.Manifest
|
import android.Manifest
|
||||||
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import android.view.View
|
import android.view.View
|
||||||
|
import android.view.inputmethod.InputMethodManager
|
||||||
import androidx.core.app.ActivityCompat
|
import androidx.core.app.ActivityCompat
|
||||||
import com.cmx.wanhui.R
|
import com.cmx.wanhui.R
|
||||||
import com.cmx.wanhui.constant.Events
|
import com.cmx.wanhui.constant.Events
|
||||||
|
@ -15,6 +17,7 @@ import com.cmx.wanhui.model.LoginRes
|
||||||
import com.cmx.wanhui.retrofit.RetrofitAPIManager
|
import com.cmx.wanhui.retrofit.RetrofitAPIManager
|
||||||
import com.cmx.wanhui.utils.MyUtils.setAndroidNativeLightStatusBar
|
import com.cmx.wanhui.utils.MyUtils.setAndroidNativeLightStatusBar
|
||||||
import com.cmx.wanhui.utils.MyUtils.setFullscreen
|
import com.cmx.wanhui.utils.MyUtils.setFullscreen
|
||||||
|
import com.cmx.wanhui.utils.SpUtils
|
||||||
import com.cmx.wanhui.utils.SpUtils.putString
|
import com.cmx.wanhui.utils.SpUtils.putString
|
||||||
import com.cmx.wanhui.view.ConfirmDialog
|
import com.cmx.wanhui.view.ConfirmDialog
|
||||||
import com.lsxiao.apollo.core.Apollo
|
import com.lsxiao.apollo.core.Apollo
|
||||||
|
@ -45,7 +48,7 @@ class LoginActivity : BaseActivity() {
|
||||||
return@OnClickListener
|
return@OnClickListener
|
||||||
}
|
}
|
||||||
if (TextUtils.isEmpty(edt_password.text.toString().trim { it <= ' ' })) {
|
if (TextUtils.isEmpty(edt_password.text.toString().trim { it <= ' ' })) {
|
||||||
Toasty.info(this@LoginActivity, "请输入密码").show()
|
Toasty.info(this, "请输入密码").show()
|
||||||
return@OnClickListener
|
return@OnClickListener
|
||||||
}
|
}
|
||||||
toLogin()
|
toLogin()
|
||||||
|
@ -91,6 +94,7 @@ class LoginActivity : BaseActivity() {
|
||||||
if (response.isSuccessful && response.body()!!.code == 0) {
|
if (response.isSuccessful && response.body()!!.code == 0) {
|
||||||
putString(this@LoginActivity, "token", response.body()!!.access_token)
|
putString(this@LoginActivity, "token", response.body()!!.access_token)
|
||||||
putString(this@LoginActivity, "admin", response.body()!!.is_admin)
|
putString(this@LoginActivity, "admin", response.body()!!.is_admin)
|
||||||
|
putString(this@LoginActivity, "sign", response.body()!!.sign)
|
||||||
val intent = Intent(this@LoginActivity, MainActivity::class.java)
|
val intent = Intent(this@LoginActivity, MainActivity::class.java)
|
||||||
startActivity(intent)
|
startActivity(intent)
|
||||||
finish()
|
finish()
|
||||||
|
|
|
@ -9,8 +9,10 @@ import androidx.annotation.RequiresApi
|
||||||
import androidx.navigation.NavController
|
import androidx.navigation.NavController
|
||||||
import androidx.navigation.Navigation
|
import androidx.navigation.Navigation
|
||||||
import androidx.navigation.ui.NavigationUI
|
import androidx.navigation.ui.NavigationUI
|
||||||
|
import cn.jpush.android.api.JPushInterface
|
||||||
import com.cmx.wanhui.R
|
import com.cmx.wanhui.R
|
||||||
import com.cmx.wanhui.constant.Events
|
import com.cmx.wanhui.constant.Events
|
||||||
|
import com.cmx.wanhui.utils.SpUtils
|
||||||
import com.cmx.wanhui.view.ConfirmDialog
|
import com.cmx.wanhui.view.ConfirmDialog
|
||||||
import com.cmx.wanhui.view.ConfirmDialog.*
|
import com.cmx.wanhui.view.ConfirmDialog.*
|
||||||
import com.google.zxing.integration.android.IntentIntegrator
|
import com.google.zxing.integration.android.IntentIntegrator
|
||||||
|
@ -28,6 +30,7 @@ class MainActivity : BaseActivity() {
|
||||||
navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_main)
|
navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_main)
|
||||||
NavigationUI.setupWithNavController(nav_view, navController!!)
|
NavigationUI.setupWithNavController(nav_view, navController!!)
|
||||||
nav_view.itemIconTintList = null
|
nav_view.itemIconTintList = null
|
||||||
|
JPushInterface.setAlias(this, 1, SpUtils.getString(this, "sign"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@ package com.cmx.wanhui.activity
|
||||||
|
|
||||||
import android.app.Application
|
import android.app.Application
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
|
import cn.jpush.android.api.JPushInterface
|
||||||
import com.lsxiao.apollo.core.Apollo
|
import com.lsxiao.apollo.core.Apollo
|
||||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||||
|
|
||||||
|
@ -10,6 +11,8 @@ class MyApplication : Application() {
|
||||||
super.onCreate()
|
super.onCreate()
|
||||||
mInstance = this
|
mInstance = this
|
||||||
Apollo.init(AndroidSchedulers.mainThread(), this)
|
Apollo.init(AndroidSchedulers.mainThread(), this)
|
||||||
|
JPushInterface.setDebugMode(true)
|
||||||
|
JPushInterface.init(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun attachBaseContext(base: Context) {
|
override fun attachBaseContext(base: Context) {
|
||||||
|
|
|
@ -62,6 +62,7 @@ interface Events {
|
||||||
* 原生返回_发送给web返回
|
* 原生返回_发送给web返回
|
||||||
*/
|
*/
|
||||||
const val JS_OPEN_WEB_BACK = "js_open_web_back"
|
const val JS_OPEN_WEB_BACK = "js_open_web_back"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* web无法在返回——退出APP
|
* web无法在返回——退出APP
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -8,6 +8,7 @@ class LoginRes {
|
||||||
* is_admin : 1
|
* is_admin : 1
|
||||||
*/
|
*/
|
||||||
var code = 0
|
var code = 0
|
||||||
|
var sign: String? = null
|
||||||
var message: String? = null
|
var message: String? = null
|
||||||
var access_token: String? = null
|
var access_token: String? = null
|
||||||
var is_admin: String? = null
|
var is_admin: String? = null
|
||||||
|
|
|
@ -0,0 +1,105 @@
|
||||||
|
package com.cmx.wanhui.service;
|
||||||
|
|
||||||
|
import android.app.Notification;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.text.TextUtils;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.lsxiao.apollo.core.Apollo;
|
||||||
|
import com.lsxiao.apollo.core.contract.ApolloBinder;
|
||||||
|
|
||||||
|
import cn.jpush.android.api.CustomMessage;
|
||||||
|
import cn.jpush.android.api.JPushMessage;
|
||||||
|
import cn.jpush.android.api.NotificationMessage;
|
||||||
|
import cn.jpush.android.service.JPushMessageReceiver;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author lyh
|
||||||
|
*/
|
||||||
|
public class MyJpushReceiver extends JPushMessageReceiver {
|
||||||
|
private static final String TAG = "自定义消息";
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Notification getNotification(Context context, NotificationMessage notificationMessage) {
|
||||||
|
Log.e("getNotification", "getNotification");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onMessage(Context context, CustomMessage customMessage) {
|
||||||
|
//c.a().a(context, var2);
|
||||||
|
String extra = customMessage.extra;
|
||||||
|
Log.e("融云自定义消息", extra);
|
||||||
|
Log.e("融云自定义消息Id", customMessage.messageId);
|
||||||
|
// if (!TextUtils.isEmpty(extra)) {
|
||||||
|
// try {
|
||||||
|
// MsgExtraBean bean = new Gson().fromJson(extra, MsgExtraBean.class);
|
||||||
|
// MsgExtraDetBean beanDet = new Gson().fromJson(bean.getMsg(), MsgExtraDetBean.class);
|
||||||
|
// Apollo.emit(Events.JPUSH_MSG, new MsgDetBean(customMessage.messageId, "1", beanDet.getExtras().getClinicId()));
|
||||||
|
//
|
||||||
|
// } catch (Exception e) {
|
||||||
|
// Log.e("3333", "3333");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// if (!TextUtils.isEmpty(extra)) {
|
||||||
|
// Gson gson = new Gson();
|
||||||
|
// RtcInUserBean jpushRongcloudMessage = gson.fromJson(extra, RtcInUserBean.class);
|
||||||
|
// String appPackageName = RxAppTool.getAppPackageName(context);
|
||||||
|
// int operatingStatus = AppContext.operatingStatus(context, appPackageName, appPackageName + ".ui.MainActivity");
|
||||||
|
// if (0 == operatingStatus) {
|
||||||
|
// //APP不存在
|
||||||
|
// Log.d("我是APP", "我不运行");
|
||||||
|
// Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(RxAppTool.getAppPackageName(context));
|
||||||
|
// launchIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
|
||||||
|
// context.startActivity(launchIntent);
|
||||||
|
// } else if (1 == operatingStatus) {
|
||||||
|
// //前台运行
|
||||||
|
//
|
||||||
|
// } else if (2 == operatingStatus) {
|
||||||
|
// //前台运行
|
||||||
|
//
|
||||||
|
// } else if (3 == operatingStatus) {
|
||||||
|
// //后台运行
|
||||||
|
// Log.d("我是APP", "我在后台运行");
|
||||||
|
// Intent mainIntent = new Intent(context, MainActivity.class);
|
||||||
|
// //将MainAtivity的launchMode设置成SingleTask, 或者在下面flag中加上Intent.FLAG_CLEAR_TOP,
|
||||||
|
// //如果Task栈中有MainActivity的实例,就会把它移到栈顶,把在它之上的Activity都清理出栈,
|
||||||
|
// //如果Task栈不存在MainActivity实例,则在栈顶创建
|
||||||
|
// mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||||
|
// context.startActivity(mainIntent);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNotifyMessageOpened(Context context, NotificationMessage notificationMessage) {
|
||||||
|
// Apollo.emit(Events.JPUSH_MSG_CLICK, notificationMessage.msgId);
|
||||||
|
// Log.e("onNotifyMessageOpened", notificationMessage.toString());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNotifyMessageArrived(Context context, NotificationMessage notificationMessage) {
|
||||||
|
Log.e("onNotifyMessageArrived", "onNotifyMessageArrived");
|
||||||
|
//收到消息
|
||||||
|
ApolloBinder bind = Apollo.bind(context);
|
||||||
|
//c.a().a(context, notificationMessage, "cn.jpush.android.intent.NOTIFICATION_RECEIVED");
|
||||||
|
String notificationExtras = notificationMessage.notificationExtras;
|
||||||
|
//if (notificationExtras.indexOf("com.smxy.demo.push.doamin.Invitation") >= 0) {
|
||||||
|
if (!TextUtils.isEmpty(notificationExtras)) {
|
||||||
|
//Apollo.emit(Events.JPUSH_INVITATION_MESSAGE, jpushInvitationNoticeData);
|
||||||
|
}
|
||||||
|
if (bind != null) {
|
||||||
|
bind.unbind();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAliasOperatorResult(Context context, JPushMessage jPushMessage) {
|
||||||
|
super.onAliasOperatorResult(context, jPushMessage);
|
||||||
|
Log.e("onAliasOperatorResult: ", "onAliasOperatorResult");
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
package com.cmx.wanhui.service
|
||||||
|
|
||||||
|
import cn.jpush.android.service.JCommonService
|
||||||
|
|
||||||
|
class MyJpushService : JCommonService() {
|
||||||
|
|
||||||
|
}
|
|
@ -29,9 +29,8 @@ open class BaseFragment : Fragment() {
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
|
requireActivity().window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
|
||||||
mBaseLoadingDialog = BaseLoadingDialog(activity)
|
mBaseLoadingDialog = BaseLoadingDialog(activity)
|
||||||
MyUtils.setFullscreen(requireActivity(), false, false)
|
|
||||||
MyUtils.setAndroidNativeLightStatusBar(requireActivity(), true)
|
|
||||||
mApolloBinder = Apollo.bind(this)
|
mApolloBinder = Apollo.bind(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,14 +39,14 @@ open class BaseFragment : Fragment() {
|
||||||
* 相关属性设置
|
* 相关属性设置
|
||||||
*/
|
*/
|
||||||
fun setWebView(webView: WebView) {
|
fun setWebView(webView: WebView) {
|
||||||
val webSettings = webView!!.settings
|
val webSettings = webView.settings
|
||||||
webSettings.javaScriptEnabled = true
|
webSettings.javaScriptEnabled = true
|
||||||
webSettings.cacheMode = WebSettings.LOAD_NO_CACHE
|
webSettings.cacheMode = WebSettings.LOAD_NO_CACHE
|
||||||
webSettings.domStorageEnabled = true
|
webSettings.domStorageEnabled = true
|
||||||
webSettings.allowFileAccess = true //文件访问
|
webSettings.allowFileAccess = true //文件访问
|
||||||
webSettings.allowFileAccessFromFileURLs = true
|
webSettings.allowFileAccessFromFileURLs = true
|
||||||
webView!!.addJavascriptInterface(AndroidtoJs(), "AndroidtoJs")
|
webView.addJavascriptInterface(AndroidtoJs(), "AndroidtoJs")
|
||||||
webView!!.webViewClient = object : WebViewClient() {
|
webView.webViewClient = object : WebViewClient() {
|
||||||
override fun onPageStarted(view: WebView?, url: String?, favicon: Bitmap?) {
|
override fun onPageStarted(view: WebView?, url: String?, favicon: Bitmap?) {
|
||||||
super.onPageStarted(view, url, favicon)
|
super.onPageStarted(view, url, favicon)
|
||||||
showDialog()
|
showDialog()
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package com.cmx.wanhui.ui;
|
package com.cmx.wanhui.ui;
|
||||||
|
|
||||||
import static com.cmx.wanhui.constant.Events.SERVER_URL;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.ClipData;
|
import android.content.ClipData;
|
||||||
|
@ -15,30 +14,17 @@ import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.webkit.ValueCallback;
|
import android.webkit.ValueCallback;
|
||||||
import android.webkit.WebChromeClient;
|
import android.webkit.WebChromeClient;
|
||||||
import android.webkit.WebResourceError;
|
|
||||||
import android.webkit.WebResourceRequest;
|
|
||||||
import android.webkit.WebSettings;
|
|
||||||
import android.webkit.WebView;
|
import android.webkit.WebView;
|
||||||
import android.webkit.WebViewClient;
|
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.annotation.Nullable;
|
|
||||||
import androidx.fragment.app.Fragment;
|
|
||||||
import androidx.lifecycle.ViewModelProvider;
|
|
||||||
|
|
||||||
import com.cmx.wanhui.activity.LoginActivity;
|
|
||||||
import com.cmx.wanhui.constant.Events;
|
import com.cmx.wanhui.constant.Events;
|
||||||
import com.cmx.wanhui.databinding.FragmentHomeBinding;
|
import com.cmx.wanhui.databinding.FragmentHomeBinding;
|
||||||
import com.cmx.wanhui.model.QRBean;
|
import com.cmx.wanhui.model.QRBean;
|
||||||
import com.cmx.wanhui.utils.AndroidtoJs;
|
|
||||||
import com.cmx.wanhui.utils.L;
|
import com.cmx.wanhui.utils.L;
|
||||||
import com.cmx.wanhui.utils.MyUtils;
|
|
||||||
import com.cmx.wanhui.view.BaseLoadingDialog;
|
|
||||||
import com.cmx.wanhui.view.ConfirmDialog;
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.lsxiao.apollo.core.Apollo;
|
import com.lsxiao.apollo.core.Apollo;
|
||||||
import com.lsxiao.apollo.core.annotations.Receive;
|
import com.lsxiao.apollo.core.annotations.Receive;
|
||||||
import com.lsxiao.apollo.core.contract.ApolloBinder;
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@ -133,7 +119,6 @@ public class HomeFragment extends BaseFragment {
|
||||||
return imageFile;
|
return imageFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||||
if (requestCode != INPUT_FILE_REQUEST_CODE || mUploadMessage == null) {
|
if (requestCode != INPUT_FILE_REQUEST_CODE || mUploadMessage == null) {
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
android:hint="请输入用户名"
|
android:hint="请输入用户名"
|
||||||
android:paddingStart="10dip"
|
android:paddingStart="10dip"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:text="wanhui"
|
|
||||||
android:textColorHint="#919191"
|
android:textColorHint="#919191"
|
||||||
android:textSize="16sp" />
|
android:textSize="16sp" />
|
||||||
<!-- wanhui-->
|
<!-- wanhui-->
|
||||||
|
@ -52,7 +51,6 @@
|
||||||
android:inputType="textPassword"
|
android:inputType="textPassword"
|
||||||
android:paddingStart="10dip"
|
android:paddingStart="10dip"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:text="123456"
|
|
||||||
android:textColorHint="#919191"
|
android:textColorHint="#919191"
|
||||||
android:textSize="16sp" />
|
android:textSize="16sp" />
|
||||||
|
|
||||||
|
|
|
@ -11,4 +11,6 @@
|
||||||
<color name="green_theme_light">#ff00be47</color>
|
<color name="green_theme_light">#ff00be47</color>
|
||||||
<color name="base_col">#1890FF</color>
|
<color name="base_col">#1890FF</color>
|
||||||
|
|
||||||
|
<color name="title_col">#FAFAFA</color>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
|
@ -2,9 +2,9 @@
|
||||||
<!-- Base application theme. -->
|
<!-- Base application theme. -->
|
||||||
<style name="Theme.AfricanFinance" parent="Theme.AppCompat.Light.NoActionBar">
|
<style name="Theme.AfricanFinance" parent="Theme.AppCompat.Light.NoActionBar">
|
||||||
<!-- Primary brand color. -->
|
<!-- Primary brand color. -->
|
||||||
<item name="colorPrimary">@color/green_theme_light</item>
|
<item name="colorPrimary">@color/title_col</item>
|
||||||
<item name="colorPrimaryVariant">@color/green_theme_light</item>
|
<item name="colorPrimaryVariant">@color/title_col</item>
|
||||||
<item name="colorOnPrimary">@color/white</item>
|
<item name="colorOnPrimary">@color/title_col</item>
|
||||||
<!-- Secondary brand color. -->
|
<!-- Secondary brand color. -->
|
||||||
<item name="colorSecondary">@color/green_theme_light</item>
|
<item name="colorSecondary">@color/green_theme_light</item>
|
||||||
<item name="colorSecondaryVariant">@color/green_theme_light</item>
|
<item name="colorSecondaryVariant">@color/green_theme_light</item>
|
||||||
|
|
Loading…
Reference in New Issue