方法/步骤
1
1. ios应用商店下载workflow。因为有可能是英文版的,如果各位对英语不熟,可以看网上提供了中文汉化版。
2
2. 右滑到iPhone的Widget界面 点添加 workflow。
3
3.进入workflow界面主要有两个分类,My Workflows(自己现有的Workflows)Gallery(类似于库,已经是可用的规则,可以直接点进入,然后Get Workflow)
4
4 怎么添加别人提供好的规则。首先将别人提供好的规则的链接复制,然后用自带的safri浏览器打开。然后按照步骤提示将规则添加到My Workflows. 最后点击运行就可以了。
5
5. 具体怎么理解,以制作GIF并分享到社交软件为例。
首先,Workflows有三种模式,我们选择Normal。
然后,点击Start。
先将Photo拖进去,然后提示Mark GIF,之后查看,分享到社交圈。
大致流程就是这样,类似于堆积木。
实现步骤:创建自定义workflow activity ,实现对CRM数据更新。
创建自定义workflow,实现整个流程。
集成自定义workflow到CRM.
?
创建自定义workflow activity
启动 Microsoft Visual Studio 2010。
在"文件"菜单上,单击"新建",然后单击"项目"。
在"新建项目"对话框的"已安装的模板"窗格中,选择"Visual C#"下的"工作流",然后选择"活动库"。
指定解决方案的名称和位置,然后单击"确定"。
导航到"项目"菜单并选择"属性"。在"应用程序"选项卡上,指定".NET Framework 4"作为目标框架。
添加对 Microsoft.Xrm.Sdk.dll 和 Microsoft.Xrm.Workflow.dll 程序集的引用。
删除项目中的 Activity1.xaml 文件。
将类文件 (.cs) 添加到项目中。在解决方案资源管理器中,右键单击项目,选择"添加",然后单击"类"。在"添加新项"对话框中,键入类的名称,然后单击"添加"。
打开类文件,然后添加以下 using 指令:
using System.Activities
using Microsoft.Xrm.Sdk
using Microsoft.Xrm.Sdk.Workflow
使该类继承自 CodeActivity 类:
public class SampleCustomActivity : CodeActivity
通过添加Execute方法为类添加功能:
protected override void Execute(CodeActivityContext context)
{
//Activity code
Update Data here
}
编译项目以创建程序集 (.dll)。
?
?
创建自定义workflow
若要使用在 Microsoft Dynamics CRM 之外创建或修改的 XAML 工作流,请确保:
您的用户帐户在 Microsoft Dynamics CRM 中具有 Deployment Administrator权限。
在 Microsoft Dynamics CRM 服务器上启用了声明性工作流。 PowerShell($setting.AllowDeclarativeWorkflows="True")
创建工作流项目
在 Microsoft Visual Studio 中的"文件"菜单上,选择"新建",然后单击"项目"。
在"已安装模板"下展开"Visual C#",然后单击"工作流"。
单击"活动库",选择".NET Framework 4",为项目指定名称和位置,然后单击"确定"。
在"解决方案资源管理器"中,右键单击"活动库",然后单击"添加引用"。
单击"浏览",并找到 Microsoft.Xrm.Sdk.dll 和 Microsoft.Xrm.Sdk.Workflow.dll文件。选择这些文件并将其添加到项目。
进行工作流的定制。
集成自定义workflow到CRM.
使用插件注册工具来注册自定义工作流活动程序集到CRM。
构建 Plug-in Registration 工具。您可在SDK\Tools\PluginRegistration 文件夹中找到该工具的源代码。若要构建和使用插件注册工具,您必须首先安装 Windows Identity Foundation。
用户帐户必须具有系统定制员或系统管理员角色。
导入自定义的workflow
%TrainingKit%\Labs\WorkflowVS2010\Sources\Assets\WorkflowXamlTool.
打开 WorkflowXamlTool.sln, 修改workflow name and primaryentity ,执行solution.
?
var newWF = new Entity("workflow")
newWF.Attributes.Add("name", "On test 10311")
newWF.Attributes.Add("type", new OptionSetValue(1))
newWF.Attributes.Add("scope", new OptionSetValue(4))
newWF.Attributes.Add("category", new OptionSetValue(0))
newWF.Attributes.Add("primaryentity", "abc_dummy")
newWF.Attributes.Add("xaml", content2)
newWF.Attributes.Add("ondemand", true)
?
try
{
_serviceProxy.Create(newWF)
?
MessageBox.Show("Workflow successfully imported.", "Import",MessageBoxButtons.OK, MessageBoxIcon.Information)
}
catch (FaultException ex)
{
}
选择自定义xaml 文件,导入。
具体内容是:把同样的文字内容一次性发送到 Weibo 或/和 Twitter。
把同样的文字+图片一次性发送到 Weibo 或/和 Twitter。
通过 Share Sheet 分享任意链接并且加上自己想说的话,然后发送到 Weibo 或/和 Twitter。
将以上三步合并为一个 Workflow,执行时选择其中一个然后让 Workflow 自动进行后面的工作。
将文字内容送到Weibo 或/和 Twitter
在这里用到的动作只有三个
Text
Text 是最简单也比较常用的动作,最关键的是我们对它非常熟悉——“就是个输入框嘛,往里打字就可以了呗。”如果你这么想就对了,这软件上手就是这么的傻瓜式——你要做的就是把想发的微博内容输入到 Text 的文本框里。
Ask for Input
上面介绍的是 Text 文本框,我们看到它非常熟悉,但是它的一大缺点是会保留上一个 *** 作留下的内容。也就是说,你每一次通过 Workflow 发微博,都需要把上一次发的内容先删了才行。所以我实际上建议在这个 Workflow 里实用Ask for Input 这个动作。
Ask for Input 这个动作也是 Workflow 里最常用的动作,我在上一篇文章也提到过它。
1-1
你把 Prompt 里填上“微博内容”,这样每次打开这个 Workflow,直接点击运行。它就会d出个对话框让你输入微博内容。
Tweet
Tweet 的动作框里,前半部分写着“Show Compose Sheet”意思是“显示内容编辑框”,后面是一个开关:
内容编辑框
如果你把开关打开,那么就是选择显示内容编辑框,这么做的优势在于:
可以看到文本(图片)内容、字数。
如果你是多账户的话,临时可以选择账户。
可以临时修改内容。
可取消该步骤
但想必你会马上意识到“妈的我刚写好的东西有什么可修改的?”所以其实显示内容编辑框的优势并不明显。而关闭那个开关,也就是不显示内容编辑框的话,界面就会变成这样:
关闭开关
它的好处是:直接后台发送内容,省掉你点击编辑框的时间,以及等待发送成功再进行下一步的时间。
但是如果你确实有选择账户的需求,又不想看到内容编辑框浪费时间呢?Workflow 同样可以做到:按下 Tweet 动作框里选择账户的部分,你就能看到一个d出菜单,里面会有Ask When Run、Clipboard、Input三个选项,你选择Ask When Run,就能在动作进行到这一步的时候自动出现一个对话框来问你选择哪个账户发送。
选择账户
注意,在内容编辑框里,我们需要先按一下选择账户那个位置——也就是说我们要先看一下那个位置在哪——然后再选择账户。而在 Ask When Run 这种方式下,我们是直接选择账户。
另外,记住,在 Workflow 这款软件里,凡白皆可点,每个动作框里只要有白色的区域就是可以点的,只要有菜单出现就至少能看到 Ask When Run、Clipboard、Input 这三个选项,活用 Ask When Run 能让你做到一些你认为你做不到的事。
Share
分享按钮
Share 这个动作就是大家最熟悉的分享按钮了,之所以要用到它是因为 Workflow 在当前版本(1.0.1)还没有支持微博的分享功能,等到支持了应该就能和 Tweet 这个动作一样,可以在后台发送。也就是说,你只要编辑好内容,点一下发送,剩下的 Workflow 帮你做好。
将文字+图片发送到Weibo 或/和 Twitter
在这一步我们将谈到变量,你会发现它果然也很容易。
会发文字微博了,图文微博怎么办。在文字微博那个 Workflow 上再加几步就能做到。
选择照片
在动作列表里找到 Select Photots 这个动作,用它来选择照片。拖到你的 Workflow 里以后你会发现有个 Select Multiple 的开关,打开就能多选图片,但是 iOS 本身不能上传多图到社交网站——你可以自己试试在相册里选择多图的话,Twitter 和微博这两个选项都会不见的——所以 Workflow 以及任何通过 iOS 内置的功能去分享照片的办法只能分享一张照片。所以这个开关在这个 Workflow 关上就行了。
另外,如果你经常分享最后一张照片(或者是手机截图)的话,你可以在 Workflow 的动作列表里找到 Get Latest Photos 和 Get Latest Screenshots这些选项,拖到 Workflow 里试试看会有什么效果~
设定变量
终于看见“变量”这俩字了,是时候克服你从初中数学开始就对这两个字产生的恐惧了。
为了节省时间,我们要使用 Workflow 把两种不同的内容(文字和图片)作为一个整体发送出去。这一点的困难就是你得告诉 Workflow 他们俩(文字和图片)是一起的。在 Workflow 里的做法,就是:把文字放到一个变量里,把图片放到一个变量里,然后把这俩变量合成一个变量,交给 Workflow。
具体的 *** 作是,在动作列表里找到 Set Variable 也就是“设定变量”这个动作,然后拖到 Select Photos 这一步的下面,你会发现这两个动作中间连起了一条线,这就说明 Workflow 明白了你要把你选的那张照片设为一个变量。然后你可以在 Set Variable 后面的空白处输入你想输入的东西,我在这里输入了“图片”,你可以输入“img”,它就像给这张图片起了个临时的名字,什么名字都可以,中文英文符号只要你明白就都可以。
给图片设置变量
所以你可以这样看 Workflow 里的变量——给前面那一步的结果起个名字。
添加变量
前面说到,我们在这里用变量的原因是要用 Workflow 把两种不同的内容(文字和图片)作为一个整体发送出去。所以要给图片起个名字(设个变量)、给文字也起个名字(也设个变量),然后把它俩放在一起成为一个组合,再给组合起个名字(设个新变量)。
在 Workflow 里,这个步骤要分开来做。也就是说,图片起了名字以后,直接就可以成立组合,等一会儿给文字起名字以后把他加到这个组合里就行了。这在 Workflow 里的具体做法是:
将一个变量添加到另一个变量
在动作列表里找到 Add to Variable 也就是“添加到变量”这个动作,拖到你的 Workflow 里,Set Variable 这一步下面,那条连接的线就又会出现,你应该已经懂得它代表什么了。同样,这个组合的名字你可以随便给,我给的是“图文”。
对文字的处理
我们现在已经把文字和组合的变量设妥了,现在要处理文字了。我们要给文字设个变量,再把文字这个变量加入到组合的变量里。具体做法是:
把 Set Variable 拖到 Ask for Input 下面,给它起个名字;再把 Add to Variable 拖到 Set Variable 下面,注意,这里现在要填的是组合的名字,你不能再胡给名字了。
9
删除照片
Workflow 可以在处理完照片以后删除这张我们再也不会用的照片,在这个 Workflow 里,只要你把 Delete Photos 这一步放到 Share 这一步的下面就可以了:
10
Workflow 里有修改图片的功能叫做 Edit Photo,这个在分享照片的时候很实用,一般你给人看图片就会有希望让他看的那个“点”,通过 Edit Photo你就可以把你想让对方看的地方标记出来。那么你能不能在这个环节介绍的 Workflow 里加上 Edit Photo 这个动作,让你的 Workflow 更实用?
有时候人们分享图片是只想分享图片,不加字儿,但是新浪微博要求必须加字才能发微博。所以它官方客户端在只分享图片的时候的做法是自动添四个字“分享图片”。通过 Workflow 能不能做到?
通过 Share Sheet 分享任意链接发送到Weibo 或/和 Twitter
有时候你看到了一篇网站或者在你的 RSS/Read Later 客户端里读到了一篇你想分享的文章,你在 App Store 看到了一个好的 App 或者游戏,你想把它同时分享到 Twitter 和微博,通过 Workflow 也可以轻松做到。
Workflow Type
在这个环节我们要接触 Workflow Type,它只有两种,所以没什么难的。
查看 Workflow Type 的方法是在每个具体的 Workflow 的右上角寻找齿轮图标,里面是一个菜单,其中有一项是让我们选择 Workflow Type:
Workflow Type
Normal 类型的 Workflow 不会出现在 iOS 的分享菜单里面,只能通过 Workflow 这个程序本身运行。前面的内容都是在 Narmal 这个类型里完成的。
Action Extension 类型的则可在 Workflow 程序内运行也可在分享菜单中运行(Workflow 的相应位置有图解)。我们在这里要用到它,比较强力的 Workflow 一般都要用到它。
我们选择 Action Extension 能看到 Accepts 这个选项,打开后里面有一个列表,这个列表里显示的是 Workflow 分享菜单里接受的数据类型。
选择 URLs
我们在这里是要分享链接到微博和 Twitter,所以可以把其它的都删掉只要留下 URLs 就可以。
这其实已经是“分享链接到微博和 Twitter”这个 Workflow 的第一步——获取链接,下一步我们要做的,就是要给链接设一个变量——我在这里设置的是“链接”——好把这个链接和我们一会想发的微博放在一起。
直接把获取的 URL 设为变量直接把获取的 URL 设为变量
然后下一步,我们要开始输入微博正文了,我们还是和以前一样要用到 Ask for Input ,然后给它的结果也设置一个变量,我在这里设置的是“正文”。
14
最后通过 Text 框把两个变量放到一起。这一步有点小技巧:当你点进 Text 框,你会发现d出的键盘上有 Ask When Run、Variable...、Clipboard 这三个按钮,选择 Variable...,你就可以看出一个d出的菜单,里面有你在前面设置好的所有变量。比如说我前面设定了选择其中的变量,就会在 Text 框里出现一个套着蓝色框的变量——这就是 Workflow 的自定义变量的表现方式:
Workflow 里变量的表现方式Workflow 里变量的表现方式
到了这一步的逻辑是,你给链接设了个变量(link),然后输入微博,给这个微博内容也设个变量(正文),最后在 Text 框里面给这两个变量排一下顺序,决定让微博内容在先还是链接在先,最后将 Text 框里的整体作为微博发送出来。所以最后不要忘记加上 Tweet 跟 Share 这两个动作。
既然是分享链接(一般是文章)到社交网站,比较方便的办法其实是直接引用文中一段话作为对这个链接的介绍。所以你可以想想,能不能这个环节介绍的 Workflow 稍作改动,做一个“Clipboard + link 的 Workflow”?
如果你不只想分享链接,还想分享 Safari 里看到的文章的标题,要怎么做?试试看 Get Name这 个动作。
将以上三步合并为一个 Workflow
我们用效率软件是因为我们“懒”,所以既然懒了,就要有懒到底的精神。
现在你已经分别掌握了发送文字内容/图文内容/链接内容到微博和 Twitter 的方法。如果你三种使用情境都有的话,这就意味着你要做3个 Workflow 了。做三个 Workflow 没什么不好,唯一的缺点是“不够懒”。既然都是把东西发送到微博和 Twitter,我们能不能把它们做到同一个 Workflow?让我们做到在分享内容的时候只用这一个 Workflow,然后d出一个菜单里面有“文字微博”、“图文微博”、“分享链接”,然后我们需要哪种分享方式就选哪种分享凡事,剩下的交给 Workflow 来处理。
答案自然是可以。在这里我们要介绍 Workflow 这款软件里复杂动作的核心内容——List、If 和 Choose from Menu。
List——列表
我们要做的是要d出一个菜单,里面有“文字微博”、“图文微博”、“分享链接”给我们选,所以这第一步,可以是一个列表。从 Workflow 里找到 List 拖到你的 Workflow 里,在里面分别写上“文字微博”、“图文微博”、“分享链接”,行不够了可以按添加按钮来添加行。
16
然后我们要从这个列表里选一样,所以要用到 Choose from List 这个动作。同样,找到它然后拖到你的 Workflow 里。因为我们选的是其中“一项”,所以可以把“Select Multiple”这个开关关闭。
然后下一步,就是选完其中一项以后,让 Workflow 知道你选的是什么,然后执行之后的 *** 作。那么其实这里面的逻辑是:
“如果”我选择的是文字微博,“那么”就让 Workflow 执行关于文字微博的 *** 作;
“或者”我选择的是图文微博,“那么”就让 Workflow 执行关于图文微博的 *** 作;
“又或者”我选择的是分享链接,“那么”就让 Workflow 执行关于分享链接的 *** 作。
If——条件
这个“如果……那么……”在 Workflow 里就是 “If 语句”,上述的逻辑在 Workflow 里的 *** 作是:
把 If 拖进 Workflow,你会发现它和其它动作不太一样。If 会带下来 otherwise 和 End If 两个配套的动作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)