[원] 콩판 라디오 데스크톱 플러그인 개발-검색 플러그인

4225 단어 플러그인 개발
콩판 라디오 데스크톱 3.0 이후에 플러그인 구조를 채택한 것은 한편으로는 연습을 하기 위한 것이고 더욱 편리하기 위한 것이다.사용자의 사용을 편리하게 하고 나의 개발과 발표를 편리하게 하며 다른 수요가 있는 학우들의 확장과 2차 개발을 더욱 편리하게 해야 한다.
콩판 라디오 데스크톱 버전의 플러그인 관리 인터페이스를 살펴보면 사실상 플러그인도 몇 가지로 나뉘는데 현재는'검색 플러그인','필터 플러그인','노래 처리','역사 기록'등 몇 가지 플러그인을 포함하고 있다.그 중에서'검색 플러그인'이 가장 간단하고 현재 인터페이스도 비교적 완선하며 사용자의 수요 차이도 비교적 클 수 있기 때문에'검색 플러그인'의 개발 방법을 먼저 내놓는다.
준비 작업
먼저 다운로드콩판 라디오 데스크톱 최신판, 다운로드한 압축 가방에서 슬립퍼를 찾습니다.Common.PluginFramework.dll、Slippor.Douban.Radio.Search.dll, 이 두 dll.
그리고 Class Library 프로젝트를 새로 만듭니다. XXSearchPlugin이라는 이름을 붙이고, 상기 두 dll의 인용을 새 프로젝트에 추가하는 것을 권장합니다.이로써 준비 작업이 끝났다.
검색엔진 플러그인 개발
검색엔진 플러그인 하나가 얼마나 간단합니까?두 종류만 필요해!
클래스 중 하나가 Slippor를 상속합니다.Douban.Radio.검색 아래의 BaseSearch 기본 클래스 (이것은 ISearch 인터페이스를 응용한 클래스로 이미 모든 방법을 실현했고 몇 개의 필드에 대한 정보만 제공하면 된다.)큰 고래 수색의 경우 JuJingSearch는 다음과 같습니다.
using Slippor.Douban.Radio.Search;

namespace JuJingSearchPlugin
{
    public class JuJingSearch : BaseSearch
    {
        public JuJingSearch()
        {
            _searchUrl = "http://www.top100.cn/search/index.aspx?keyword={0}";
            _name = "  ";
            _encoder = "utf-8";
        }
    }
}

여기에 세 개의 필드가 있습니다:검색 Url은 검색엔진의 검색 특징인 Url이고'{0}'은 검색 키워드의 차지 문자입니다.name은 표시 이름입니다.encoder는 검색 키워드에 대한 인코딩 문자 집합입니다. 기본값은 'gb2312' 입니다.
또한 플러그 인에 대한 정보를 제공하는 플러그 인 클래스도 간단합니다.
using System.ComponentModel;
using Slippor.Common.PluginFramework;
using Slippor.Douban.Radio.Search;

namespace JuJingSearchPlugin
{
    [Description("      ")]
    [DisplayName("    ")]
    [Author("    ")]
    [Version("1.0.0.0")]
    [PluginCategory(PluginCategory.Search)]
    public class JuJingSearchPlugin : SearchPlugin
    {
        protected override ISearch Search
        {
            get { return new JuJingSearch(); }
        }
    }
}

SearchPlugin 클래스를 상속하므로 Search 속성만 구현하면 됩니다.이 안에 글자 수가 비교적 많은 것은 클래스 앞의 특성인'Attribute'표시이다.각각Attibute의 의미는 매우 명확하다. 그 중에서 PluginCategory는 이 플러그인이 어떤 종류의 플러그인에 속하는지 가리키는 데 사용된다. 여기는 당연히 PluginCategory이다.서치야.
작은 힌트
앞에서 말한 바와 같이BaseSearch는 ISearch 인터페이스를 실현했고 해당하는SearchPlugin 클래스에 있어 실현하고자 하는 Search 속성도 ISearch 인터페이스를 응용하면 된다.그러면 당연히 검색엔진류가 ISearch 인터페이스를 직접 응용할 수 있고 구체적인 실현 방식은 상세하게 설명하지 않고 Slippor를 인용해야 할 수도 있음을 일깨워 줄 수 있다.Douban.Radio.Assist.dll, 이거 dll.
비고
여기에 검색 플러그인만 내보내는 개발 방법은 현재 이런 플러그인의 인터페이스만 비교적 안정적이고 나머지는 좀 더 안정적이어야 하기 때문이다.물론 식후에 몇 개의 dll를 골라서 스스로 연구할 수도 있다. 매우 간단하다. 특히 리플렉터 대살기에 맞춘 후에.
어린이 신발로 개발된 플러그인을 공유하고 싶다면 환영합니다.원본 코드를 보내주십시오. 검사 후 콩잎 라디오 데스크톱-플러그인 대전에 발표하겠습니다.반드시 원본 코드가 되어야 하는 것은 안전상의 고려에서 비롯된 것이니 양해해 주십시오.

좋은 웹페이지 즐겨찾기