diff --git a/wmpf-demo/app/libs/wmpf-cli-release-v1.0.4-rc3.aar b/wmpf-demo/app/libs/wmpf-cli-release-v1.0.4-rc3.aar deleted file mode 100644 index abe685d..0000000 Binary files a/wmpf-demo/app/libs/wmpf-cli-release-v1.0.4-rc3.aar and /dev/null differ diff --git a/wmpf-demo/app/libs/wmpf-cli-release.aar b/wmpf-demo/app/libs/wmpf-cli-release.aar new file mode 100644 index 0000000..283dcf2 Binary files /dev/null and b/wmpf-demo/app/libs/wmpf-cli-release.aar differ diff --git a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/Api.kt b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/Api.kt index afe261f..c738da6 100644 --- a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/Api.kt +++ b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/Api.kt @@ -2,14 +2,15 @@ package com.tencent.wmpf.demo +import android.app.Application import android.util.Log import com.tencent.luggage.demo.wxapi.DeviceInfo import com.tencent.mm.ipcinvoker.IPCInvokeCallbackEx +import com.tencent.wmpf.app.WMPFBoot import com.tencent.wmpf.cli.task.* import com.tencent.wmpf.cli.task.pb.WMPFBaseRequestHelper import com.tencent.wmpf.cli.task.pb.WMPFIPCInvoker import com.tencent.wmpf.cli.task.pb.proto.WMPFResponse -import com.tencent.wmpf.demo.utils.InvokeTokenHelper import com.tencent.wmpf.proto.* import com.tencent.wmpf.utils.WMPFHelper import io.reactivex.Observable @@ -23,6 +24,30 @@ object Api { return response != null && response.baseResponse.errCode == TaskError.ErrType_OK } + fun init(context: Application) { + WMPFBoot.init(context) + val invokeToken = getInvokeToken() + WMPFIPCInvoker.initInvokeToken(invokeToken) + } + + private fun getInvokeToken(): String { + if (WMPFBoot.getAppContext() == null) { + throw java.lang.Exception("need invoke Api.Init") + } + val pref = WMPFBoot.getAppContext()!!.getSharedPreferences("InvokeTokenHelper", 0) + return pref?.getString(TAG, "")!! + } + + private fun initInvokeToken(invokeToken: String) { + if (WMPFBoot.getAppContext() == null) { + throw java.lang.Exception("need invoke Api.Init") + } + val pref = WMPFBoot.getAppContext()!!.getSharedPreferences("InvokeTokenHelper", 0) + val editor = pref?.edit() + editor?.putString(TAG, invokeToken)?.apply() + WMPFIPCInvoker.initInvokeToken(invokeToken) + } + private fun createTaskError(response: WMPFResponse?): TaskError { if (response == null) { return TaskError(TaskError.ErrType_NORMAL, -1, "response is null") @@ -62,7 +87,7 @@ object Api { it.onSuccess(response) if (response != null && !response.invokeToken.isNullOrEmpty()) { - InvokeTokenHelper.initInvokeToken(response.invokeToken) + initInvokeToken(response.invokeToken) } } else { it.onError(TaskErrorException(createTaskError(response))) @@ -106,7 +131,7 @@ object Api { it.onSuccess(response) if (response != null && !response.invokeToken.isNullOrEmpty()) { - InvokeTokenHelper.initInvokeToken(response.invokeToken) + initInvokeToken(response.invokeToken) } } else { it.onError(TaskErrorException(createTaskError(response))) diff --git a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/DemoApplication.java b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/DemoApplication.java index bf5f72c..3c652cb 100644 --- a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/DemoApplication.java +++ b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/DemoApplication.java @@ -5,7 +5,6 @@ import com.tencent.mmkv.MMKV; import com.tencent.wmpf.app.WMPFApplication; -import com.tencent.wmpf.demo.utils.InvokeTokenHelper; /** * For 4.4 multi dex support @@ -16,12 +15,18 @@ protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); - InvokeTokenHelper.INSTANCE.initInvokeToken(this); - String rootDir = MMKV.initialize(this); System.out.println("mmkv root: " + rootDir); } + @Override + public void onCreate() { + super.onCreate(); + + // 只需要关注Api类中的方法即可跑通WMPF + Api.INSTANCE.init(this); + } + @Override public void onTerminate() { super.onTerminate(); diff --git a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/DocumentActivity.kt b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/DocumentActivity.kt index 9a5a434..306b868 100644 --- a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/DocumentActivity.kt +++ b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/DocumentActivity.kt @@ -10,7 +10,6 @@ import com.tencent.luggage.demo.wxapi.DeviceInfo import com.tencent.wmpf.cli.task.IPCInvokerTask_InitGlobalConfig import com.tencent.wmpf.demo.Api import com.tencent.wmpf.demo.R -import com.tencent.wmpf.demo.utils.InvokeTokenHelper import io.reactivex.schedulers.Schedulers import org.json.JSONObject diff --git a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/FastExperienceActivity.kt b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/FastExperienceActivity.kt index 101598a..36fdd77 100644 --- a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/FastExperienceActivity.kt +++ b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/FastExperienceActivity.kt @@ -20,10 +20,7 @@ import com.tencent.wmpf.cli.task.pb.WMPFBaseRequestHelper import com.tencent.wmpf.demo.Api import com.tencent.wmpf.demo.R import com.tencent.wmpf.demo.RequestsRepo -import com.tencent.wmpf.demo.utils.InvokeTokenHelper import com.tencent.wmpf.proto.* -import com.tencent.wxapi.test.OpenSdkTestUtil -import io.reactivex.schedulers.Schedulers import java.util.* class FastExperienceActivity : AppCompatActivity() { diff --git a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/MainActivity.kt b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/MainActivity.kt index ef6747c..d60d719 100644 --- a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/MainActivity.kt +++ b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/ui/MainActivity.kt @@ -25,7 +25,6 @@ import com.tencent.wmpf.cli.task.* import com.tencent.wmpf.cli.task.pb.WMPFBaseRequestHelper import com.tencent.wmpf.demo.Api import com.tencent.wmpf.demo.R -import com.tencent.wmpf.demo.utils.InvokeTokenHelper import com.tencent.wmpf.proto.* import com.tencent.wxapi.test.OpenSdkTestUtil import io.reactivex.android.schedulers.AndroidSchedulers diff --git a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/utils/InvokeTokenHelper.kt b/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/utils/InvokeTokenHelper.kt deleted file mode 100644 index a026d13..0000000 --- a/wmpf-demo/app/src/main/java/com/tencent/wmpf/demo/utils/InvokeTokenHelper.kt +++ /dev/null @@ -1,36 +0,0 @@ -package com.tencent.wmpf.demo.utils - -import android.content.Context -import com.tencent.wmpf.cli.task.pb.WMPFIPCInvoker -import java.lang.Exception - -object InvokeTokenHelper { - private const val TAG = "InvokeTokenHelper" - private var context: Context? = null - - fun initInvokeToken(context: Context) { - this.context = context - val invokeToken = getInvokeToken() - WMPFIPCInvoker.initInvokeToken(invokeToken) - } - - private fun getInvokeToken(): String { - if (context == null) { - throw Exception("need invoke initInvokeToken.") - } - val pref = context!!.getSharedPreferences(TAG, 0) - return pref?.getString(TAG, "")!! - } - - fun initInvokeToken(invokeToken: String) { - if (context == null) { - throw Exception("need invoke initInvokeToken.") - } - val pref = context!!.getSharedPreferences(TAG, 0) - val editor = pref?.edit() - editor?.putString(TAG, invokeToken)?.apply() - WMPFIPCInvoker.initInvokeToken(invokeToken) - } - -} -