IAdblockPlus
General notes
这个接口可以用来实现其他扩展与 Adblock Plus 相集成。 它允许其他扩展从 Adblock Plus 获取部分信息或添加可由其他扩展更新的"特殊"订阅组。
if ("@adblockplus.org/abp/public;1" in Components.classes) { var abpURL = Components.classes["@adblockplus.org/abp/public;1"] .getService(Components.interfaces.nsIURI); var AdblockPlus = Components.utils.import(abpURL.spec, null).AdblockPlus; alert(AdblockPlus.subscriptionCount); } else { // Adblock Plus is not installed }
Methods and properties
- void addPatterns ( arrayof wstring patterns )
- AString getInstalledVersion ( )
- IAdblockPlusSubscription getSubscription ( AString id )
- IAdblockPlusSubscription getSubscriptionAt ( PRInt32 index )
- boolean removeExternalSubscription ( AString id )
- void removePatterns ( arrayof wstring patterns )
- readonly PRInt32 subscriptionCount
- wstring updateExternalSubscription ( AString id, AUTF8String title, arrayof wstring patterns )
void addPatterns ( arrayof wstring patterns )
给用户自定义过滤规则列表添加 pattern
- Version:
- 0.7.2.3 and higher
- Arguments:
- patterns: 所要添加的过滤规则列表
AString getInstalledVersion ( )
获取所安装的 Adblock Plus 扩展版本号。请注意这个版本号是扩展管理器或 InstallTrigger 所报告的版本号,且在 Mozilla Suite 或 SeaMonkey 中使用 InstallTrigger 有可能会报告错误的版本号。
- Returns:
-
Adblock Plus 版本号,例如:
0.7.0.1
IAdblockPlusSubscription getSubscription ( AString id )
根据 ID 获取一个订阅组
- Arguments:
- id: 该订阅组的标识符(对于普通订阅组是指它的 URL)
- Returns:
-
所请求的订阅组或
null
(如果找不到与所给标识符一致的订阅组)
IAdblockPlusSubscription getSubscriptionAt ( PRInt32 index )
根据所处的列表位置获取一个订阅组
- Arguments:
- index: 订阅组在列表中所处的位置,值基于零
- Returns:
-
所请求的订阅组或
null
(如果所给的 index 无效)
boolean removeExternalSubscription ( AString id )
移除一个外部的订阅组
- Arguments:
- id: 该订阅组的标识符(对于外部订阅组标识符可以是任意字符串)
- Returns:
-
true
(成功移除该订阅组)false
(不存在该订阅组或不是外部订阅组)
void removePatterns ( arrayof wstring patterns )
从用户自定义过滤规则列表移除 pattern
- Version:
- 0.7.2.3 and higher
- Arguments:
- patterns: 所要移除的过滤规则 pattern 列表
readonly PRInt32 subscriptionCount
列表中订阅组的数目(包含特殊的订阅组)
wstring updateExternalSubscription ( AString id, AUTF8String title, arrayof wstring patterns )
更新一个外部订阅组或当前不存在此类订阅组时创建一个订阅组。这类订阅组 Adblock Plus 不负责更新,而是由调用这个方法的扩展负责更新并在不需要时负责删除。
在 Adblock Plus 1.3 及更高版本中,外部订阅组不再像其他订阅组一样保存在磁盘。浏览器每次启动并恢复外部订阅组时都需要调用 updateExternalSubscription() 方法,确保在用户卸载管理该外部订阅组的扩展后及时从列表中移除。
此外,在 Adblock Plus 1.3 之前的版本中,这个类函数会返回一个标识是否可创建订阅组的布尔值。Adblock Plus 1.3 及其更高的版本保证了订阅组的成功创建,但订阅组标识符有可能会被重写并返回一个新的标识符。
- Arguments:
- id: 订阅组的标识符(对于外部订阅组标识符可以是任何字符串)
- title: 创建新订阅组时所用到的标题。如果订阅组存在则忽略这个参数。
- patterns: 订阅组所要包含的过滤规则 pattern 列表
- Returns:
- 有效的订阅组标识符(可能与 id 参数不同)