Skip to main content

Detail View Controller

The Entrupy Android SDK's Detail View Controller provides a comprehensive interface for displaying authentication results and managing item-specific interactions. This full-screen activity presents detailed information about an authenticated item, including the final result, certificate access, support features, and catalog data.

Overview

The Detail View Controller is the primary interface for users to interact with completed authentication results. It serves as a central hub for:

  • Result Display: Showing the final authentication outcome (Authentic, Unknown, Not Supported, etc.).
  • Certificate Access: Providing links to digital certificates of authenticity.
  • Support Integration: Enabling item-specific support communications.
  • Flag Management: Allowing users to flag results for review.
  • Retake Actions: Launching retake capture when additional images are needed.

1. Launching the Detail View

Call displayDetailViewForItem(entrupyId) to present the Detail View for a specific authentication:

1.1 From Capture Flow

After a capture, you can show the Detail View once you have an Entrupy ID (received via webhook on your backend):

import com.entrupy.sdk.app.EntrupyApp

fun showDetailViewForItem(entrupyId: String) {
EntrupyApp.sharedInstance().displayDetailViewForItem(entrupyId)
}

1.2 From Your List UI

You can launch the Detail View programmatically from your own history or list UI:

import com.entrupy.sdk.app.EntrupyApp

fun onItemClicked(entrupyId: String) {
EntrupyApp.sharedInstance().displayDetailViewForItem(entrupyId)
}

1.3 With Authorization Check

Always verify the user is authorized before launching the Detail View:

import com.entrupy.sdk.app.EntrupyApp

fun showItemDetails(entrupyId: String) {
val entrupyApp = EntrupyApp.sharedInstance()
if (entrupyApp.isAuthorizationValid()) {
entrupyApp.displayDetailViewForItem(entrupyId)
} else {
Log.e("DetailView", "User not authorized. Please log in again.")
}
}

2. Detail View Content

The Detail View Controller displays comprehensive information organized into several sections:

2.1 Authentication Result

  • Primary Result: The final authentication outcome (Authentic, Unknown, Not Supported, Invalid).
  • Processing Timeline: History of the authentication process and key events.

2.2 Item Information

  • Basic Details: Brand, style name, size, and other metadata provided during capture.
  • Images: Images captured during the authentication process.

2.3 Certificate Access

  • Digital Certificate: For authentic items, a link to the digital certificate of authenticity.
  • Sharing Options: Ability to share the certificate via various methods.

2.4 Support Features

  • Flag Management: Options to flag results for review or view flag status.
  • Support Communication: Item-specific support interface for structured messages.

3. Integration with Other SDK Components

3.1 MarketEdge View

To show market insights for an item, use displayMarketEdgeView() instead of or alongside the Detail View:

import com.entrupy.sdk.app.EntrupyApp
import com.entrupy.sdk.features.marketedge.model.MarketEdgeViewConfiguration

EntrupyApp.sharedInstance().displayMarketEdgeView(
entrupyId = "your-entrupy-id",
configuration = MarketEdgeViewConfiguration()
)

See the MarketEdge View UI guide for details.

3.2 Retake Capture

When Entrupy requests additional images, launch a retake from the Detail View context:

import com.entrupy.sdk.app.EntrupyApp

EntrupyApp.sharedInstance().startRetakeCapture("authentication-id")

See the Retake Flow UI guide for details.

4. Best Practices

4.1 User Experience

  • Always check authorization before launching the Detail View.
  • Handle navigation consistently — the Detail View launches as a full-screen activity.
  • Provide a path back — ensure users can navigate back to your app's main flow.

4.2 Theming

The Detail View respects your app's Material theme. See UI Theme Customization for details on customizing colors and styles.

4.3 Error Handling

  • If the Entrupy ID is invalid or the item is not found, the SDK handles the error internally.
  • Network errors during data loading are displayed to the user within the Detail View.

Next Steps