All Projects → LivotovLabs → 3dsview

LivotovLabs / 3dsview

Licence: apache-2.0
Android UI component to process banking 3D Secure (MasterCard SecureCode / Verified By Visa) payment authorizations in Android apps.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to 3dsview

Cl.kunder.webview
This cordova plugin enables you to open a second webview
Stars: ✭ 36 (-62.5%)
Mutual labels:  webview
Ultimaterefreshview
UltimateRefreshView 实现下拉刷新,上拉加载更多的轻量级库;支持RecyclerView ,ListView ,ScrollView & WebView
Stars: ✭ 64 (-33.33%)
Mutual labels:  webview
Flutter browser app
A Full-Featured Mobile Browser App (such as the Google Chrome mobile browser) created using Flutter and the features offered by the flutter_inappwebview plugin.
Stars: ✭ 85 (-11.46%)
Mutual labels:  webview
Youtubetv
📺 YouTube embedded player library for Android TV
Stars: ✭ 44 (-54.17%)
Mutual labels:  webview
Agentweb
AgentWeb is a powerful library based on Android WebView.
Stars: ✭ 8,375 (+8623.96%)
Mutual labels:  webview
Journey
JCEF-powered cross-platform web browser
Stars: ✭ 68 (-29.17%)
Mutual labels:  webview
Popup Bridge Android
PopupBridge allows WebViews to open popup windows in a browser and send data back to the WebView
Stars: ✭ 31 (-67.71%)
Mutual labels:  webview
Iamport React Native
React Native용 아임포트 일반.결제 및 휴대폰 본인인증 모듈입니다.
Stars: ✭ 88 (-8.33%)
Mutual labels:  webview
Vue Bridge Webview
javascript bridge android/ios webview
Stars: ✭ 52 (-45.83%)
Mutual labels:  webview
Flutter inappwebview
A Flutter plugin that allows you to add an inline webview, to use a headless webview, and to open an in-app browser window.
Stars: ✭ 1,259 (+1211.46%)
Mutual labels:  webview
Forpda
Alternative client for 4pda.ru
Stars: ✭ 43 (-55.21%)
Mutual labels:  webview
Customtabs Kotlin
Helpers of the Chrome Custom tabs re-written in Kotlin and with Architecture Components to offer a simpler API
Stars: ✭ 48 (-50%)
Mutual labels:  webview
React Native Web Webview
React Native for Web implementation of RN's WebView
Stars: ✭ 79 (-17.71%)
Mutual labels:  webview
Andorid Litehybrid Webview
A android hybrid framework, works for H5 and native interactions via webview.
Stars: ✭ 39 (-59.37%)
Mutual labels:  webview
Easy web view
Flutter Web Views on Mobile and Web made easy!
Stars: ✭ 85 (-11.46%)
Mutual labels:  webview
Bywebview
🌐 WebView 全方面使用,JS交互、进度条、上传图片、错误页面、视频全屏播放、唤起原生App、获取网页源代码、被作为第三方浏览器打开、DeepLink、[腾讯x5使用示例]
Stars: ✭ 982 (+922.92%)
Mutual labels:  webview
Parser Javascript
Browser sniffing gone too far — A useragent parser library for JavaScript
Stars: ✭ 66 (-31.25%)
Mutual labels:  webview
React Native Webview Crosswalk
Crosswalk's WebView for React Native on Android.
Stars: ✭ 92 (-4.17%)
Mutual labels:  webview
Android Ssl Pinning Webviews
A simple demo app that demonstrates Certificate pinning and scheme/domain whitelisting in Android WebViews
Stars: ✭ 86 (-10.42%)
Mutual labels:  webview
Coolindicator
A dazzling indicator
Stars: ✭ 85 (-11.46%)
Mutual labels:  webview

3DSView (D3SView :) , aka 3D Secure WebView

Self-contained UI component to process banking 3D Secure (MasterCard SecureCode / Verified By Visa) payment authorizations in Android apps.

Why exactly "D3S" ? Simply because Java does not allow to have number as a first character in a package and class names :)

Component have to be used instead of a WebView and handles the complete payment authorization process from redirecting user to an ACS banking server web UI and to grabbing authorization results and parameters, intercepting post events and parsing the code.

Simply add it to your layout just instead of a WebView, invoke only two methods and then you have 3DS auth implemented.

Component can be used in activity, fragment or in any other part of your layout, both declaratively (in xml files) or programmatically by creating an instance in the source code. Only make sure to give it sufficient space on the screen to display the banking ACS web page.

Status

  • Current stable version: Download
  • Current development version: n/a

Get It

  • Maven repository: jCenter
  • Group: eu.livotov.labs.android
  • Artifact ID: 3DSView
implementation 'eu.livotov.labs.android:3DSView:[email protected]'

What's new (1.1.2.9)

  • Latest pull requests merged
  • Code reading

Installation

Release versions are available from jCenter repository, so just add the "implementation" statement to your project. For snapshots, please add our bintray snapshots repository url first: https://dl.bintray.com/livotovlabs/maven

dependencies {
    implementation 'eu.livotov.labs.android:3DSView:[email protected]'
}

Alternatively you may download the source code and build it on your own.

Quick Usage

  1. Build your own or download precompiled 3dsview.jar from releases section and put it to the libs folder of your app project.
  2. Add eu.livotov.labs.android.d3s.D3SView to your layout file (or create and add it programmatically)
  3. In corresponding Activity or Fragment, configure the instance of D3SView by calling DS3View#setAuthorizationListener(D3SViewAuthorizationListener).
    • This adds a listener to receive authorization results and progress messages.
    • You will receive authorization MD and PaRes values there as well, when 3DSecure completes.
  4. Invoke the D3SView#authorize(String, String, String) method by passing MD, PaReq and ACS url values, you receive from your card payment gateway and listen for authorization completion event in your callback.
    • Specifying postback url is optional but recommended, the library will use a sensible default value if not set.
  5. Once user completes the authorization at the ACS server, your callback method will be automatically called with the 3DS response data, which you may then pass to your processing backend server for payment finalization.

For a quick sample see the checkout the 3DSViewSample sub project in this repo.

Bugs, Suggestions, Ideas

Any ideas/bugs/etc, as well as pull requests, are welcome in the issues section.

Credits

Alex Askerov (@askerov), Mia Alexiou (@subsymbolic), Luke Korth (@lkorth), Christophe Beyls (@cbeyls), Owen O Byrne (@owenobyrne)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].