Browse Source

修改rk3128平台7.1上toast偶现报错问题

weizhengliang 1 năm trước cách đây
mục cha
commit
fdd6983b2d

+ 4 - 0
app/src/main/code/com/wdkl/app/ncs/application/Application.kt

@@ -9,6 +9,7 @@ import com.wdkl.ncs.android.lib.base.BaseApplication
 import com.enation.javashop.net.engine.config.NetEngineConfig
 import com.enation.javashop.net.engine.plugin.exception.RestfulExceptionInterceptor
 import com.enation.javashop.utils.base.config.BaseConfig
+import com.hjq.toast.Toaster
 import com.wdkl.app.ncs.callingdoor.helper.LocaleMangerUtils
 //import com.enation.javashop.utils.base.config.BaseConfig
 //import com.wdkl.app.ncs.callingdoor.helper.AnrFcExceptionUtil
@@ -114,6 +115,9 @@ class Application : BaseApplication() {
             SerialPortUtil.getInstance().openSerialPort("/dev/ttyS2")
         }
 
+        // 初始化 Toast 框架
+        Toaster.init(this)
+
         //屏幕适配方案
         /*if ("rk3288".equals(Build.MODEL)) {
             AutoSizeConfig.getInstance()

+ 3 - 0
common/build.gradle

@@ -190,6 +190,9 @@ dependencies {
      */
     compile files('libs/chinese2py.jar')
 
+    //toast 框架
+    compile files('libs/Toaster-12.2.aar')
+
     /**
      * 二维码扫描
      */

BIN
common/libs/Toaster-12.2.aar


+ 19 - 8
common/src/main/code/com/wdkl/ncs/android/lib/utils/ExtendMethods.kt

@@ -11,6 +11,7 @@ import android.app.Activity
 import android.app.Service
 import android.content.Context
 import android.content.Intent
+import android.os.Build
 import android.os.Looper
 import android.view.View
 import android.view.ViewGroup
@@ -31,6 +32,7 @@ import com.enation.javashop.net.engine.plugin.rxbus.RxBus
 import com.enation.javashop.utils.base.tool.CommonTool
 import com.enation.javashop.utils.base.tool.ScreenTool
 import com.enation.javashop.utils.logger.LoggerFactory
+import com.hjq.toast.Toaster
 import com.wdkl.ncs.android.lib.R
 import io.reactivex.disposables.Disposable
 import okhttp3.ResponseBody
@@ -85,14 +87,23 @@ fun showMessage(message: String) {
     if (message == ""){
         return
     }
-    val messageCallback = {
-        Toast.makeText(BaseApplication.appContext, message, Toast.LENGTH_SHORT).show()
-    }
-    try {
-        messageCallback.invoke()
-    } catch (runtime: RuntimeException) {
-        Looper.prepare()
-        messageCallback.invoke()
+
+    if ("rk3128".equals(Build.MODEL)) {
+        try {
+            Toaster.showShort(message)
+        } catch (ex: Exception) {
+            //
+        }
+    } else {
+        val messageCallback = {
+            Toast.makeText(BaseApplication.appContext, message, Toast.LENGTH_SHORT).show()
+        }
+        try {
+            messageCallback.invoke()
+        } catch (runtime: RuntimeException) {
+            Looper.prepare()
+            messageCallback.invoke()
+        }
     }
 }