2017-05-16 6 views
1

최근에 내 응용 프로그램에서 Algolia를 성공적으로 구현했습니다 (the examples).Algolia Android 초기 검색이 정말 느립니다.

그러나 초기 검색에는 약 5-7 초가 걸리며 전체 라이브러리 코드 및 문서를 확인한 후 빠른 검색 방법을 찾지 못했습니다. 초기 검색 후 검색이 매우 빨라집니다.

내 구현에 특별한 것은 없지만 내가하지 않은 것을 볼 수 있습니다. 다음 코드는 내가 초기화 활동에서입니다 Algolia :

Searcher searcher = new Searcher(ALGOLIA_APP_ID, ALGOLIA_SEARCH_API_KEY, ALGOLIA_INDEX_NAME); 
    searcher.setQuery(new Query("word").setExactOnSingleWordQuery(Query.ExactOnSingleWordQuery.ATTRIBUTE)); 
    searcher.addNumericRefinement(new NumericRefinement("CountryId", NumericRefinement.OPERATOR_EQ, 1)); 
    InstantSearch helper = new InstantSearch(this, searcher); 
    helper.setSearchOnEmptyString(false); 
    helper.search(); 

그리고 이것은 관련 XML 레이아웃입니다 :

<FrameLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingBottom="6dp" 
    android:paddingRight="10dp" 
    android:paddingLeft="1dp" 
    android:paddingTop="6dp"> 

    <com.algolia.instantsearch.ui.views.SearchBox 
    android:id="@+id/searchBox" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:queryHint="@string/search_text_hint" 
    algolia:searchIcon="@drawable/icn_search_big" 
    algolia:closeIcon="@drawable/icn_clear_filled_big" 
    android:queryBackground="@drawable/sarch_query_shape" 
    android:background="@drawable/search_shape" 
    algolia:autofocus="true" 
    algolia:submitButtonEnabled="false" /> 
</FrameLayout>` 
<com.algolia.instantsearch.ui.views.Hits 
    android:id="@+id/hits" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    algolia:autoHideKeyboard="true" 
    algolia:hitsPerPage="6" 
    android:layout_below="@+id/searchBarParentLayout" 
    algolia:infiniteScroll="false" 
    algolia:itemLayout="@layout/search_item_algolia_row"/> 

당신이 여기에 문제가 될 수있는 어떤 생각을 가지고 있습니까이?

+2

'helper.setSearchOnEmptyString (false);'를 제거하거나 true로 설정하면 여전히 같은 문제가 발생합니까? 또한 5 초 걸리는 네트워크 호출인지 궁금합니다. 또는 5 초 지연으로 네트워크 호출을 보내기 때문에입니다 (이상한 이유로). [Charles] (https://www.charlesproxy.com/)와 같은 도구가 있으면 문제가 네트워크 측 (및 Algolia의 백엔드)에 있는지 빠르게 확인할 수 있습니다. –

+2

답변 해 주셔서 감사합니다. 문제는 Wi-Fi 연결 상태 인 것으로 보입니다. 네트워크 도구를 사용하여 체크인 한 후 첫 번째 요청이 5 초 지연된다는 것을 알았습니다. 그럼 내가 다른 와이파이로 전환하고 문제가 실망했다. 아마 그것은 vpn의 bacause입니다. –

+0

당신이 해결책을 찾았다 니 기쁘다! 나는 당신이 안드로이드를위한 InstantSearch를 즐기기를 희망한다. :) –

답변

1

다른 Wi-Fi로 전환하면 문제가 사라졌기 때문에 기쁩니다. InstantSearch 안드로이드와 네트워크 문제가 발생할 수 있습니다 미래의 독자

: 당신이 예제 응용 프로그램을 실행하는 문제를 볼 경우, 모든

  • 먼저 구축하고 one of our demo applications
  • 를 실행, 당신은 프록시 등을 사용하여 시도 할 수 있습니다 Charles 앱과 네트워크 사이에 무슨 일이 일어나고 있는지 조사하는

예제를 실행하는 경우, 또는 당신이 documentation를 다음과 같은 경우 문제가 지속되면 , 당신의 코드의 샘플과 함께 문제를 설명하는 이메일을 [email protected]에게 보내십시오!