2014-09-09 4 views
0

Для разработки приложения для Android, которое показывает мою собственную вики (mediawiki), я хочу использовать gwtwiki или bliki.Загрузить wiki-страницу и содержимое с помощью gwtwiki

Я пробовал много читать содержимое или страницы, но ничего не делал.

Вот один из теста я сделал:

public void readContent() { 
    String[] listOfTitleStrings = { "Main Page", "API" }; 
    User user = new User("", "", "http://192.168.0.2/mediawiki/api.php"); 
    user.login(); 
    List<Page> listOfPages = user.queryCategories(listOfTitleStrings); 

    Toast.makeText(getActivity(), "Pages size: " + listOfPages.size(), Toast.LENGTH_LONG).show(); 

    for (Page page : listOfPages) { 
     for (int j = 0; j < page.sizeOfCategoryList(); j++) { 
      Category cat = page.getCategory(j); 
      Toast.makeText(getActivity(), cat.toString(), Toast.LENGTH_LONG).show(); 
     } 
    } 
} 

Для этого образца размером страниц 0. Я user.getContent(listOfTitleStrings); но ничего опять не случилось.

Как использовать gwtwiki? Должен ли я прочитать страницу HTMLGET команду и получить XML из содержимого ответа, а затем показать его? Или gwtwiki делают это сами?

+0

ли ваша вики на самом деле есть страница под названием «Главная страница»? Может быть, когда вы его установили, вы устанавливаете язык, отличный от английского, поэтому фактическая главная страница имеет другое имя? – svick

+0

@svick Конечно, да, я установил mediawiki и не менял его. – Ahmad

ответ

0

Как я выяснил, отлаживая мою заявку, gwtwiki или bliki имеет ошибку при чтении XML в платформе Android.

Я сделал новый Проект Android и изменил его на Библиотека. Затем я скопировал папку с базой и ресурсами bliki в нее без переименования. Затем он используется в моем приложении как библиотека. Поэтому я столкнулся с некоторой ошибкой при запуске моего приложения, например с ошибкой создания XML-кода Parser на конструкторе класса AbstractXMLParser.

Я изменил код на конструктор класса AbstractXMLParser и он работает хорошо:

fXMLReader = SAXParserFactory.newInstance().newSAXParser().getXMLReader(); 

вместо:

fXMLReader = XMLReaderFactory.createXMLReader();