diff --git a/app/src/main/java/org/yameida/worktool/Constant.kt b/app/src/main/java/org/yameida/worktool/Constant.kt index 6b73cf5..e7741ff 100644 --- a/app/src/main/java/org/yameida/worktool/Constant.kt +++ b/app/src/main/java/org/yameida/worktool/Constant.kt @@ -18,6 +18,9 @@ object Constant { var key = "9876543210abcdef".toByteArray() var iv = "0123456789abcdef".toByteArray() val transformation = "AES/CBC/PKCS7Padding" + val weworkCorpId = "" + val weworkAgentId = "" + val weworkSchema = "" var encryptType = SPUtils.getInstance().getInt("encryptType", 1) var autoReply = SPUtils.getInstance().getInt("autoReply", 1) var groupStrict = false @@ -26,6 +29,7 @@ object Constant { var autoPublishComment = false var groupQrCode = false var enableMediaProject = false + var enableSdkShare = false var robotId: String get() = SPUtils.getInstance().getString("robotId", SPUtils.getInstance().getString("LISTEN_CHANNEL_ID", "")) set(value) { diff --git a/app/src/main/java/org/yameida/worktool/MyApplication.kt b/app/src/main/java/org/yameida/worktool/MyApplication.kt index 2d77cb9..e7ef186 100644 --- a/app/src/main/java/org/yameida/worktool/MyApplication.kt +++ b/app/src/main/java/org/yameida/worktool/MyApplication.kt @@ -9,6 +9,8 @@ import com.blankj.utilcode.util.Utils import com.efs.sdk.base.core.util.PackageUtil import com.google.gson.Gson import com.hjq.toast.ToastUtils +import com.tencent.wework.api.IWWAPI +import com.tencent.wework.api.WWAPIFactory import com.tendcloud.tenddata.TalkingDataSDK import com.umeng.commonsdk.UMConfigure import org.yameida.worktool.config.GlobalException @@ -20,6 +22,7 @@ class MyApplication : Application() { companion object { + var iwwapi: IWWAPI? = null /** * 回到WorkTool首页 需要先授权显示悬浮窗 */ @@ -57,6 +60,11 @@ class MyApplication : Application() { PlayNotifyManager.show() //设置全局异常捕获重启 Thread.setDefaultUncaughtExceptionHandler(GlobalException.getInstance()) + //注册企微分享 + if (Constant.enableSdkShare) { + iwwapi = WWAPIFactory.createWWAPI(this) + iwwapi?.registerApp(Constant.weworkSchema) + } } } \ No newline at end of file diff --git a/app/src/main/java/org/yameida/worktool/model/WeworkMessageBean.java b/app/src/main/java/org/yameida/worktool/model/WeworkMessageBean.java index c2fddb0..8abc250 100644 --- a/app/src/main/java/org/yameida/worktool/model/WeworkMessageBean.java +++ b/app/src/main/java/org/yameida/worktool/model/WeworkMessageBean.java @@ -37,6 +37,7 @@ public class WeworkMessageBean { * 添加待办 ADD_NEED_DEAL * 打卡 CLOCK_IN * 切换企业 SWITCH_CORP + * 推送链接 PUSH_LINK *
* 非操作类型 300
* 机器人普通日志记录 ROBOT_LOG
@@ -77,6 +78,7 @@ public class WeworkMessageBean {
public static final int ADD_NEED_DEAL = 221;
public static final int CLOCK_IN = 222;
public static final int SWITCH_CORP = 223;
+ public static final int PUSH_LINK = 224;
public static final int ROBOT_LOG = 301;
public static final int ROBOT_ERROR_LOG = 302;
diff --git a/app/src/main/java/org/yameida/worktool/service/MyLooper.kt b/app/src/main/java/org/yameida/worktool/service/MyLooper.kt
index eef8334..6a8de2a 100644
--- a/app/src/main/java/org/yameida/worktool/service/MyLooper.kt
+++ b/app/src/main/java/org/yameida/worktool/service/MyLooper.kt
@@ -159,6 +159,9 @@ object MyLooper {
WeworkMessageBean.PUSH_FILE -> {
WeworkController.pushFile(message)
}
+ WeworkMessageBean.PUSH_LINK -> {
+ WeworkController.pushLink(message)
+ }
WeworkMessageBean.DISMISS_GROUP -> {
WeworkController.dismissGroup(message)
}
diff --git a/app/src/main/java/org/yameida/worktool/service/WeworkController.kt b/app/src/main/java/org/yameida/worktool/service/WeworkController.kt
index 160c258..50fbedc 100644
--- a/app/src/main/java/org/yameida/worktool/service/WeworkController.kt
+++ b/app/src/main/java/org/yameida/worktool/service/WeworkController.kt
@@ -339,6 +339,30 @@ object WeworkController {
)
}
+ /**
+ * 推送链接
+ * @see WeworkMessageBean.PUSH_LINK
+ * @param message#titleList 待发送姓名列表
+ * @param message#objectName 文章标题
+ * @param message#receivedContent 文章副标题
+ * @param message#originalContent 文章链接地址
+ * @param message#fileUrl 图片地址
+ * @param message#extraText 附加留言 可选
+ */
+ @RequestMapping
+ fun pushLink(message: WeworkMessageBean): Boolean {
+ LogUtils.d("pushLink(): ${message.titleList} ${message.objectName} ${message.receivedContent} ${message.originalContent} ${message.fileUrl} ${message.extraText}")
+ return WeworkOperationImpl.pushLink(
+ message,
+ message.titleList,
+ message.objectName,
+ message.receivedContent,
+ message.originalContent,
+ message.fileUrl,
+ message.extraText
+ )
+ }
+
/**
* 按手机号添加好友
* @see WeworkMessageBean.ADD_FRIEND_BY_PHONE
diff --git a/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt b/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt
index dd95d94..9fd8b13 100644
--- a/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt
+++ b/app/src/main/java/org/yameida/worktool/service/WeworkOperationImpl.kt
@@ -718,6 +718,43 @@ object WeworkOperationImpl {
}
}
+ /**
+ * 推送链接
+ * @see WeworkMessageBean.PUSH_LINK
+ * @param titleList 待发送姓名列表
+ * @param objectName 文章标题
+ * @param receivedContent 文章副标题
+ * @param originalContent 文章链接地址
+ * @param fileUrl 图片地址
+ * @param extraText 附加留言 可选
+ */
+ fun pushLink(
+ message: WeworkMessageBean,
+ titleList: List