MCPcopy Index your code
hub / github.com/erickok/transdroid-search

github.com/erickok/transdroid-search @v4.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v4.3 ↗ · + Follow
515 symbols 1,162 edges 53 files 120 documented · 23%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

transdroid-search

Transdroid Torrent Search is an Android application that provides torrent search results to other Android apps by exposing ContentProviders. Originally part of Transdroid, it now supplies torrent links for 15+ public and private torrent sites to various torrent-related Android applications.

The latest .apk is available via transdroid.org/latest-search and code is available under the Lesser GPL v3 license.

Get it on transdroid.org Get it on F-Droid

Usage

Transdroid Torrent Search provides access to torrent searches on a variety of sites. Instead of providing a search interface itself, it allows Android application to access the data via a content provider.

Getting search results

Acquiring search results for a specific query can be as easy as as two lines of code:

Uri uri = Uri.parse("content://org.transdroid.search.torrentsearchprovider/search/" + query);
Cursor results = managedQuery(uri, null, null, null, null);

The returned Cursor can be used in a ListActivity or elsewhere. The following fields are available in the returned cursor:

String[] fields = new String[] { "_ID", "NAME", "TORRENTURL", "DETAILSURL", "SIZE", "ADDED", "SEEDERS", "LEECHERS" };

Customizing search results

A specific site may be queried and the preferred sort order can be given:

Uri uri = Uri.parse("content://org.transdroid.search.torrentsearchprovider/search/" + query);
Cursor results = managedQuery(uri, null, "SITE = ?", new String[] { siteCode }, sortOrder)

Here, siteCode is the code of one of the supported torrent sites. The default is RARBG. The orderCode is either BySeeders (default) or Combined. Note that no errors are returned when a site or sort order doesn't exist (although they are written to LogCat); a null Cursor is returned instead. (This is a limitation of ContentResolvers.)

Supported torrent sites

To get a listing of (the codes of) the support torrent sites, including custom RSS sites defined, you may use another provider:

uri = Uri.parse("content://org.transdroid.search.torrentsitesprovider/sites");
Cursor sites = managedQuery(uri, null, null, null, null);

The returned Cursor contains the following fields:

String[] fields = new String[] { "_ID", "CODE", "NAME", "RSSURL" };

Developed By

  • Eric Kok (Original developer) eric@2312.nl
  • Steve Garon
  • Gabor Tanka
  • Eric Taix
  • Alon Albert
  • John Conrad
  • Toon Schoenmakers
  • Gabor Foldvari
  • Marco Furlando
  • Mário Franco
  • Martin Piffault
  • Colby Brown
  • Thomas Riccardi
  • and others...

License

Copyright 2010-2019 Eric Kok et al.

Transdroid Torrent Search is free software: you can redistribute
it and/or modify it under the terms of the GNU Lesser General
Public License as published by the Free Software Foundation,
either version 3 of the License, or (at your option) any later
version.

Transdroid Torrent Search is distributed in the hope that it will
be useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with Transdroid.  If not, see <http://www.gnu.org/licenses/>.

Some code/libraries are used in the project:

Extension points exported contracts — how you extend this code

ISearchAdapter (Interface)
Interface with the required methods for a search adapter that synchronously gets torrent search results from some websit [22 …
app/src/main/java/org/transdroid/search/ISearchAdapter.java
OnObjectResultListener (Interface)
(no doc)
app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java
OnBooleanResultListener (Interface)
(no doc)
app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java
OnDoubleResultListener (Interface)
(no doc)
app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java
OnIntResultListener (Interface)
(no doc)
app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java

Core symbols most depended-on inside this repo

toString
called by 58
app/src/main/java/org/transdroid/search/SearchResult.java
getContent
called by 30
app/src/main/java/org/transdroid/util/HttpHelper.java
parse
called by 19
app/src/main/java/org/transdroid/search/adapters/rss/privatetrackers/PretomeAdapter.java
convertStreamToString
called by 16
app/src/main/java/org/transdroid/util/HttpHelper.java
doRequest
called by 16
app/src/external/java/org/alexd/jsonrpc/JSONRPCClient.java
doRequest
called by 16
app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java
sendErrorMessageNull
called by 16
app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java
sendError
called by 16
app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java

Shape

Method 437
Class 62
Interface 10
Enum 6

Languages

Java100%

Modules by API surface

app/src/external/java/org/alexd/jsonrpc/JSONRPCThreadedClient.java42 symbols
app/src/androidTest/java/org/transdroid/search/TorrentSiteTest.java23 symbols
app/src/external/java/org/ifies/android/sax/Channel.java22 symbols
app/src/main/java/org/transdroid/search/adapters/rss/publictrackers/NyaaTorrentsAdapter.java21 symbols
app/src/external/java/org/alexd/jsonrpc/JSONRPCClient.java21 symbols
app/src/main/java/org/transdroid/search/adapters/rss/publictrackers/TorrentDownloadsAdapter.java19 symbols
app/src/external/java/org/ifies/android/sax/Item.java19 symbols
app/src/main/java/org/transdroid/search/gui/SettingsHelper.java14 symbols
app/src/main/java/org/transdroid/search/adapters/html/AbstractHtmlAdapter.java14 symbols
app/src/main/java/org/transdroid/search/adapters/custom/CustomSiteAdapter.java12 symbols
app/src/main/java/org/transdroid/search/SearchResult.java12 symbols
app/src/main/java/org/transdroid/search/adapters/rss/publictrackers/LimeTorrentsAdapter.java11 symbols

For agents

$ claude mcp add transdroid-search \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact