QRISFLOW Safepoint

This commit is contained in:
riz081 2025-06-16 14:57:01 +07:00
parent c56cae64b9
commit eac3179d8a
9 changed files with 431 additions and 369 deletions

View File

@ -39,4 +39,6 @@ dependencies {
testImplementation libs.junit
androidTestImplementation libs.ext.junit
androidTestImplementation libs.espresso.core
implementation(name: 'PayLib-release-2.0.17', ext: 'aar')
}

Binary file not shown.

View File

@ -7,6 +7,9 @@
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission
android:name="android.permission.QUERY_ALL_PACKAGES"
tools:ignore="QueryAllPackagesPermission" />
<application
android:allowBackup="true"
@ -55,6 +58,9 @@
<activity
android:name=".HistoryDetailActivity"
android:exported="false" />
<activity
android:name=".CreditCardActivity"
android:exported="false" />
</application>
</manifest>

View File

@ -0,0 +1,3 @@
public class CreditCardActivity {
}

View File

@ -158,7 +158,7 @@ public class MainActivity extends AppCompatActivity {
if (cardView != null) {
cardView.setOnClickListener(v -> {
if (cardId == R.id.card_kartu_kredit) {
startActivity(new Intent(MainActivity.this, PaymentActivity.class));
startActivity(new Intent(MainActivity.this, CreditCardActivity.class));
} else if (cardId == R.id.card_kartu_debit) {
startActivity(new Intent(MainActivity.this, PaymentActivity.class));
} else if (cardId == R.id.card_qris) {

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp"
tools:context=".CreditCardActivity">
<TextView
android:id="@+id/tvTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Credit Card Payment"
android:textSize="24sp"
android:textStyle="bold"
android:gravity="center"
android:layout_marginBottom="24dp" />
<TextView
android:id="@+id/tvConnectionStatus"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="PaySDK Status: Connecting..."
android:textSize="16sp"
android:padding="12dp"
android:background="@drawable/bg_status"
android:layout_marginBottom="16dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginBottom="16dp">
<Button
android:id="@+id/btnCheckStatus"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Check Status"
android:layout_marginEnd="8dp" />
<Button
android:id="@+id/btnReconnect"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Reconnect"
android:layout_marginStart="8dp" />
</LinearLayout>
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/tvPaymentMethods"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Payment Methods"
android:textSize="18sp"
android:textStyle="bold"
android:layout_marginBottom="12dp" />
<Button
android:id="@+id/btnReadCard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Read Card"
android:layout_marginBottom="8dp"
android:enabled="false" />
<Button
android:id="@+id/btnEMVPayment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="EMV Payment"
android:layout_marginBottom="8dp"
android:enabled="false" />
<Button
android:id="@+id/btnPinPad"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="PIN Pad Test"
android:layout_marginBottom="8dp"
android:enabled="false" />
<Button
android:id="@+id/btnPrintTest"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Print Test"
android:layout_marginBottom="16dp"
android:enabled="false" />
</LinearLayout>
</ScrollView>
<TextView
android:id="@+id/tvDebugInfo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Debug info will appear here..."
android:textSize="12sp"
android:background="#f5f5f5"
android:padding="8dp"
android:maxLines="3"
android:ellipsize="end" />
</LinearLayout>

View File

@ -13,4 +13,6 @@
<string name="payment_status_success">Payment Successful!</string>
<string name="return_main">Return to Main Screen</string>
<string name="main_title">POC</string>
<!-- In res/values/strings.xml -->
<string name="connect_fail">Connection to payment service failed</string>
</resources>

View File

@ -16,6 +16,11 @@ dependencyResolutionManagement {
repositories {
google()
mavenCentral()
repositories {
flatDir {
dirs 'app/libs'
}
}
}
}