Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
I
Implementation Partner Connect
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Gandha Ryanto
Implementation Partner Connect
Commits
a4ba820b
Commit
a4ba820b
authored
Nov 04, 2020
by
Wahyu Pratama
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update balance library mandiri and bni
parent
12de395f
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
121 additions
and
190 deletions
+121
-190
build.gradle
app/build.gradle
+26
-21
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+1
-0
MainActivity.java
...ava/id/mdd/implementationpartnerconnect/MainActivity.java
+17
-13
MyApp.java
.../main/java/id/mdd/implementationpartnerconnect/MyApp.java
+69
-154
RXReader.java
...in/java/id/mdd/implementationpartnerconnect/RXReader.java
+2
-2
network_security_config.xml
app/src/main/res/xml/network_security_config.xml
+6
-0
No files found.
app/build.gradle
View file @
a4ba820b
apply
plugin:
'com.android.application'
android
{
compileSdkVersion
30
compileSdkVersion
28
buildToolsVersion
"30.0.1"
defaultConfig
{
applicationId
"id.mdd.implementationpartnerconnect"
minSdkVersion
22
targetSdkVersion
30
targetSdkVersion
28
versionCode
1
versionName
"1.0"
...
...
@@ -29,34 +29,39 @@ android {
}
dependencies
{
implementation
fileTree
(
dir:
"libs"
,
include:
[
"*.jar"
]
)
implementation
fileTree
(
include:
[
'*.jar'
],
dir:
'libs'
)
implementation
'androidx.appcompat:appcompat:1.2.0'
implementation
'com.android.support.constraint:constraint-layout:1.1.3'
implementation
'androidx.appcompat:appcompat:1.1.0'
implementation
'androidx.constraintlayout:constraintlayout:1.1.3'
implementation
'androidx.appcompat:appcompat:1.2.0'
implementation
"androidx.preference:preference:1.1.1"
implementation
"androidx.preference:preference:1.1.0"
implementation
'com.google.android.material:material:1.1.0'
testImplementation
'junit:junit:4.12'
androidTestImplementation
'androidx.test.ext:junit:1.1.1'
androidTestImplementation
'androidx.test.espresso:espresso-core:3.2.0'
implementation
'org.bouncycastle:bcprov-jdk15on:1.54'
implementation
'com.squareup.retrofit2:retrofit:2.3.0'
implementation
'com.squareup.retrofit2:converter-gson:2.3.0'
implementation
'com.squareup.okhttp3:logging-interceptor:3.8.0'
androidTestImplementation
'com.android.support.test:runner:1.0.2'
androidTestImplementation
'com.android.support.test.espresso:espresso-core:3.0.2'
implementation
fileTree
(
include:
[
'*.aar'
],
dir:
'libs'
)
implementation
'com.squareup.okhttp3:okhttp:3.10.0'
implementation
'com.squareup.okhttp3:logging-interceptor:3.10.0'
implementation
'com.squareup.retrofit2:adapter-rxjava2:2.4.0'
implementation
'com.squareup.retrofit2:converter-gson:2.4.0'
//retrofit
implementation
'com.squareup.retrofit2:retrofit:2.5.0'
implementation
'com.squareup.retrofit2:converter-gson:2.4.0'
implementation
'com.squareup.okhttp3:logging-interceptor:3.12.1'
implementation
'com.squareup.retrofit2:converter-scalars:2.3.0'
// implementation project(path: ':mdd-service-release')
implementation
'io.reactivex.rxjava2:rxandroid:2.1.1'
implementation
'io.reactivex.rxjava2:rxjava:2.2.10'
implementation
'com.jakewharton:butterknife:10.2.0'
implementation
'com.bugfender.sdk:android:3.+'
annotationProcessor
'com.jakewharton:butterknife-compiler:10.1.0'
implementation
(
group:
'com.mdd.payment'
,
name:
'aar-deviceid-release'
,
version:
'2.0.5'
,
ext:
'aar'
)
annotationProcessor
"androidx.room:room-compiler:2.2.5"
implementation
'androidx.core:core:1.3.1'
implementation
'io.reactivex.rxjava2:rxandroid:2.1.1'
implementation
'io.reactivex.rxjava2:rxjava:2.2.10'
implementation
'com.squareup.retrofit2:adapter-rxjava2:2.4.0'
implementation
(
group:
'com.mdd.payment'
,
name:
'aar-deviceid-release'
,
version:
'2.0.4'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.service'
,
name:
'partner-connect'
,
version:
'2.2.7'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.payment'
,
name:
'mybanklibrary-release'
,
version:
'3.5.9'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.topup'
,
name:
'update-balance'
,
version:
'2.4.7'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.service'
,
name:
'partner-connect'
,
version:
'2.3.4'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.payment'
,
name:
'mybanklibrary-release'
,
version:
'3.6.4'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.topup'
,
name:
'update-balance'
,
version:
'2.8.5'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.payment'
,
name:
'z91library-release'
,
version:
'2.1.0'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.payment'
,
name:
'organicdrv-release'
,
version:
'2.1.0'
,
ext:
'aar'
)
implementation
(
group:
'com.mdd.payment'
,
name:
'wepoylibrary-release'
,
version:
'2.2.0'
,
ext:
'aar'
)
...
...
app/src/main/AndroidManifest.xml
View file @
a4ba820b
...
...
@@ -19,6 +19,7 @@
android:icon=
"@mipmap/ic_launcher"
android:label=
"@string/app_name"
android:roundIcon=
"@mipmap/ic_launcher_round"
android:networkSecurityConfig=
"@xml/network_security_config"
android:supportsRtl=
"true"
android:theme=
"@style/AppTheme"
>
<activity
android:name=
".MainActivity"
>
...
...
app/src/main/java/id/mdd/implementationpartnerconnect/MainActivity.java
View file @
a4ba820b
...
...
@@ -19,6 +19,8 @@ import android.os.Bundle;
import
android.os.CountDownTimer
;
import
android.os.Message
;
import
android.os.StrictMode
;
import
android.provider.Settings
;
import
android.telephony.TelephonyManager
;
import
android.util.Log
;
import
android.view.View
;
import
android.view.WindowManager
;
...
...
@@ -36,6 +38,7 @@ import androidx.appcompat.app.AppCompatActivity;
import
androidx.core.app.ActivityCompat
;
import
androidx.core.content.ContextCompat
;
import
com.mdd.topupUnik.ubal.ApiUtils
;
import
com.mdd.topupUnik.ubal.InitReader
;
import
com.mdd.topupUnik.ubal.MainCardProcessor
;
import
com.mdd.topupUnik.ubal.ReversalObject
;
...
...
@@ -193,8 +196,12 @@ public class MainActivity extends AppCompatActivity implements MDDUpdateBalanceV
onTagDiscovered
(
tagFromIntent
);
}
String
imei
=
Settings
.
Secure
.
getString
(
getContentResolver
(),
"android_id"
);
Log
.
e
(
"imei"
,
imei
);
}
private
void
hideResult
()
{
mOpsResult
.
setVisibility
(
View
.
GONE
);
}
...
...
@@ -481,7 +488,7 @@ public class MainActivity extends AppCompatActivity implements MDDUpdateBalanceV
public
void
onErrorNfcCardMsg
(
int
errorCode
)
{
runOnUiThread
(()
->
MainActivity
.
this
.
onUpdateBalanceError
(
""
));
}
});
}
,
ApiUtils
.
prod_environment
);
cardProcessor
.
lockIsoDepCard
(
tag
);
String
cardUid
=
ByteArrayToHexString
(
tag
.
getId
());
Log
.
d
(
"TagFromIntent"
,
cardUid
);
...
...
@@ -500,19 +507,16 @@ public class MainActivity extends AppCompatActivity implements MDDUpdateBalanceV
final
CommandResult
<
CardInfo
>
execute
=
command
.
execute
(
cardUid
);
CardInfo
detectedCardInfo
=
execute
.
getResult
();
Log
.
d
(
"cardInfo"
,
"ini card infonnya bro : "
+
detectedCardInfo
);
Log
.
d
(
"cardInfo"
,
"ini card infonnya bro : "
+
detectedCardInfo
.
toString
()
);
Log
.
d
(
"executeSuccess"
,
"executeIsSuccess = "
+
execute
.
isSuccess
());
if
(
execute
.
isSuccess
())
{
if
(
detectedCardInfo
.
getBankType
().
equalsIgnoreCase
(
"DKI-NEW"
)){
runOnUiThread
(()
->
MainActivity
.
this
.
onBalanceInfoAvailable
(
detectedCardInfo
));
mProgress
.
setVisibility
(
View
.
GONE
);
}
else
{
cardProcessor
.
getBalance
(
detectedCardInfo
);
cardProcessor
.
updateBalance
(
detectedCardInfo
,
1
);
// switch (getCommand()) {
// case MDDCommand.COMMAND_GET_BALANCE:
// cardProcessor.getBalance(detectedCardInfo);
// break;
// case MDDCommand.COMMAND_UPDATE_BALANCE:
// cardProcessor.updateBalance(detectedCardInfo, 1);
// break;
// }
}
}
else
{
runOnUiThread
(()
->
{
Log
.
e
(
"error"
,
"Messagenya : "
+
execute
.
getMessage
());
...
...
@@ -553,7 +557,7 @@ public class MainActivity extends AppCompatActivity implements MDDUpdateBalanceV
public
void
onErrorNfcCardMsg
(
int
errorCode
)
{
runOnUiThread
(()
->
MainActivity
.
this
.
onUpdateBalanceError
(
""
));
}
});
}
,
0
);
}
@Override
...
...
app/src/main/java/id/mdd/implementationpartnerconnect/MyApp.java
View file @
a4ba820b
...
...
@@ -27,102 +27,17 @@ import io.reactivex.disposables.Disposable;
import
io.reactivex.schedulers.Schedulers
;
public
class
MyApp
extends
Application
{
// String GIVE_MID = "ba7db816e59612f8ce1630a095ef01c5"; // please ask us for credential
// String GIVE_TID = "0820517774";// please ask us for credential
// String GIVEN_TOKEN = "5b423ef49cb029340d7231cace0de201";// please ask us for credential
// private final String accessToken = "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJhdXRoLXNlcnZpY2U6MS4wLjAiLCJzdWIiOnsibmFtZSI6IlRlc3RQcm9kMyIsInVzZXJuYW1lIjoiVGVzdFByb2QzIiwiYXV0aF9sZXZlbCI6Ik1FUkNIQU5UIiwibWlkIjoiMWZiNTdmMTY2YTQ4MGU5N2JmN2EzZGNiZjkzMTkyOTMifSwiaWF0IjoxNTk3NzM3NzIxLCJleHAiOjE1OTc4MjQxMjEsIm5iZiI6MTU5NzczNzcyM30.CXM-5mCv91Yo17c9zHXQKPGR5gqAeu-LADta-_qnABYxzmnE4Dx0q7NQ9IYr6cYO6cXp40UW4s632fzVYmPCXH8f0RtSwLPqTT7_lWHK--fHCP-LZOmfgwUBxdNocYY9xAi-NyWqCmTnkjWx91lqh9S9Fcue6nO_KrBqngUpBPhpS0hPwgmkqHXX6yAdVs931NbfNM3cYW9PpGIw8K-OxoPDHByD61uAFxT9FCrTbca7vV3HFQnZEKpwxxdECu7DCQAsGTl7JqfbH2j5swe_t97rSDAGyE1HRzGX-SMqPULkC-XravF2m_HucosacYQuSdRaxAWfEIQvtQhAcRXwTA";
// private InitReader reader;
// int idDriver = nativeLib.USE_NFC_NATIVE;
// @Override
// public void onCreate() {
// super.onCreate();
// }
//
// public void initConfig(InitListener initListener) {
// TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
// if (idDriver == 1) {
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// if (checkSelfPermission(Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) {
// Toast.makeText(this, "Please grant permission", Toast.LENGTH_SHORT).show();
// return;
// } else {
// doInit();
// }
// } else {
// doInit();
// }
// }else{
// Log.d("lariKemana", "Lari ke else bro");
// new RXReader().initEdcReader(this, nativeLib.USE_NFC_NATIVE)
// .subscribeOn(Schedulers.io())
// .observeOn(AndroidSchedulers.mainThread())
// .subscribe(new SingleObserver<InitReader>() {
// @Override
// public void onSubscribe(Disposable d) {
//
// }
//
// @Override
// public void onSuccess(InitReader initReader) {
// initListener.onInitReaderComplete(initReader);
// Log.e("initReader", String.valueOf(initReader));
// }
//
//
// @Override
// public void onError(Throwable e) {
//
// }
// });
// }
// }
//
// public void doInit() {
// ConfigService configService = new ConfigService();
// configService.setMid(GIVE_MID);
// configService.setTid(GIVE_TID);
// configService.setToken(GIVEN_TOKEN);
// configService.setAccessToken(accessToken);
// AarDeviceId aarDeviceId = new AarDeviceId(this);
// String deviceId = "";
// try {
// deviceId = aarDeviceId.getDeviceId();
// } catch (DeviceNotRegisteredException e) {
// aarDeviceId.init(accessToken, DeviceEnvironment.PROD);
// }
//
// configService.setTid(deviceId);
//
// MDDService initialize = MDDService.with(this, configService);
// if (initialize.isValid()) {
// reader = initialize.getInitReader();
// if (reader != null) {
// Log.e("MyApp", "Aktivasi library sukses");
// Toast.makeText(this, "Aktivasi library sukses", Toast.LENGTH_SHORT).show();
// }else {
// Log.e("MyApp", "Library belum aktif reader null");
// Toast.makeText(this, "Library belum aktif reader null", Toast.LENGTH_SHORT).show();
// }
// } else {
// Log.e("MyApp", "Library belum aktif");
// Toast.makeText(this, "Library belum aktif", Toast.LENGTH_SHORT).show();
// }
// }
//
// public InitReader getReader() {
// return reader;
// }
String
accessToken
=
"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJhdXRoLXNlcnZpY2U6MS4wLjAiLCJzdWIiOnsibmFtZSI6IlRlc3RTdGFnIiwidXNlcm5hbWUiOiJUZXN0U3RhZyIsImF1dGhfbGV2ZWwiOiJNRVJDSEFOVCIsIm1pZCI6IjIwZjFmMTNmODA1MGFjY2QxYjNjNzFlOWUyYTQ0NzU3In0sImlhdCI6MTU5MzQxMzM5MCwiZXhwIjoxNzUxMTk4MTUwLCJuYmYiOjE1OTM0MTMzOTJ9.E6UJMKha5YCbri4KRExDV4zeA1ZBfabpW-O6SInxxvfyTTYnUZCEu58STBGrOCL0RuxTFp5Y-XEyoa932fQcTpMBMsKkvDmGeftJ0hmjzAxAjHTfUxUyEa-HHF1whsM4YQUG9CesEBjU9IUcE6Rs-jykYxuryvvqqop5BoEIwO71qQBrq6DtpwjwFk9hbNt0EKs_HmCpySfXQxorfLMbAVJCHBYoo4UVymUfwUbps7hW6eQwNoBnt11O59CRPf6uUVIfCrsaaBMcJI-mc214-EMyl3RmMbqNl_f_0ITEJhMtK2zbUFZ8dMrGdZZgWJxiHdmzxqdaEPDVshYi9Uo31w"
;
int
idDriver
=
nativeLib
.
USE_NFC_NATIVE
;
private
InitReader
reader
;
@Override
public
void
onCreate
()
{
String
accessToken
=
"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJhdXRoLXNlcnZpY2U6MS4wLjAiLCJzdWIiOnsibmFtZSI6IlRlc3RTdGFnIiwidXNlcm5hbWUiOiJUZXN0U3RhZyIsImF1dGhfbGV2ZWwiOiJNRVJDSEFOVCIsIm1pZCI6IjIwZjFmMTNmODA1MGFjY2QxYjNjNzFlOWUyYTQ0NzU3In0sImlhdCI6MTU5MzQxMzM5MCwiZXhwIjoxNzUxMTk4MTUwLCJuYmYiOjE1OTM0MTMzOTJ9.E6UJMKha5YCbri4KRExDV4zeA1ZBfabpW-O6SInxxvfyTTYnUZCEu58STBGrOCL0RuxTFp5Y-XEyoa932fQcTpMBMsKkvDmGeftJ0hmjzAxAjHTfUxUyEa-HHF1whsM4YQUG9CesEBjU9IUcE6Rs-jykYxuryvvqqop5BoEIwO71qQBrq6DtpwjwFk9hbNt0EKs_HmCpySfXQxorfLMbAVJCHBYoo4UVymUfwUbps7hW6eQwNoBnt11O59CRPf6uUVIfCrsaaBMcJI-mc214-EMyl3RmMbqNl_f_0ITEJhMtK2zbUFZ8dMrGdZZgWJxiHdmzxqdaEPDVshYi9Uo31w"
;
int
idDriver
=
nativeLib
.
USE_NFC_NATIVE
;
private
InitReader
reader
;
@Override
public
void
onCreate
()
{
super
.
onCreate
();
}
}
public
void
initAar
(
InitListener
listener
)
{
public
void
initAar
(
InitListener
listener
)
{
Bugfender
.
init
(
this
,
"apHTg4GcGupkx86oSnew7mm8cpbnwhAX"
,
BuildConfig
.
DEBUG
);
Bugfender
.
enableCrashReporting
();
Bugfender
.
enableUIEventLogging
(
this
);
...
...
@@ -132,7 +47,7 @@ public void initAar(InitListener listener) {
configService
.
setMid
(
"ba7db816e59612f8ce1630a095ef01c5"
);
configService
.
setToken
(
"5b423ef49cb029340d7231cace0de201"
);
if
(
idDriver
==
1
)
{
// configService.setTid("1234");
// configService.setTid("1234");
TelephonyManager
telephonyManager
=
(
TelephonyManager
)
getSystemService
(
Context
.
TELEPHONY_SERVICE
);
if
(
Build
.
VERSION
.
SDK_INT
>=
Build
.
VERSION_CODES
.
M
)
{
if
(
checkSelfPermission
(
Manifest
.
permission
.
READ_PHONE_STATE
)
!=
PackageManager
.
PERMISSION_GRANTED
)
{
...
...
app/src/main/java/id/mdd/implementationpartnerconnect/RXReader.java
View file @
a4ba820b
...
...
@@ -35,11 +35,11 @@ public class RXReader {
configService
.
getTid
(),
configService
.
getToken
(),
accessToken
);
,
1
);
nativeLib
nativeLibrary
=
new
nativeLib
(
context
,
deviceDriver
);
InitDebugCertificate
debugCertificate
=
new
InitDebugCertificate
();
InitReader
reader
=
debugCertificate
.
getDebug
(
nativeLibrary
,
context
,
deviceDriver
,
config
);
InitReader
reader
=
debugCertificate
.
getDebug
(
nativeLibrary
,
context
,
deviceDriver
,
config
,
true
);
emitter
.
onSuccess
(
reader
);
}
catch
(
Exception
e
)
{
emitter
.
onError
(
e
);
...
...
app/src/main/res/xml/network_security_config.xml
0 → 100644
View file @
a4ba820b
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config
cleartextTrafficPermitted=
"true"
>
<domain
includeSubdomains=
"true"
>
apidev.mdd.co.id
</domain>
</domain-config>
</network-security-config>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment