Toggle navigation
Toggle navigation
This project
Loading...
Sign in
open-source
/
warply_android_sdk_maven_plugin
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
Panagiotis Triantafyllou
2025-09-03 18:25:43 +0300
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
3efa6477c0d588276f28e41fce33eb7f6c7c26b2
3efa6477
1 parent
8854301b
remove register device request, campaigns implementation
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
147 additions
and
105 deletions
app/src/main/assets/warply.properties
warply_android_sdk/src/main/java/ly/warp/sdk/Warply.java
warply_android_sdk/src/main/java/ly/warp/sdk/activities/HomeActivity.java
warply_android_sdk/src/main/java/ly/warp/sdk/fragments/HomeFragment.java
warply_android_sdk/src/main/java/ly/warp/sdk/io/adapters/BannerAdapter.java
warply_android_sdk/src/main/java/ly/warp/sdk/utils/WarplyManagerHelper.java
warply_android_sdk/src/main/java/ly/warp/sdk/utils/managers/WarplyManager.java
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner1.png
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner2.png
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner3.png
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner4.png
warply_android_sdk/src/main/res/layout/activity_home.xml
warply_android_sdk/src/main/res/layout/fragment_home.xml
warply_android_sdk/src/main/res/layout/item_banner.xml
app/src/main/assets/warply.properties
View file @
3efa647
...
...
@@ -6,7 +6,7 @@
# dev cosmote f83dfde1145e4c2da69793abb2f579af
# prod cosmote 0086a2088301440792091b9f814c2267
Uuid
=
d5f9038f46374666a1f4e1039d89f608
Uuid
=
f83dfde1145e4c2da69793abb2f579af
# If we need to see logs in Logcat
Debug
=
true
...
...
@@ -16,7 +16,7 @@ Debug=true
# Development: https://engage-stage.warp.ly
# DEH Production: https://engage-prod.dei.gr
# DEH Development: https://engage-uat.dei.gr
BaseURL
=
https://engage-
prod.dei.gr
BaseURL
=
https://engage-
stage.warp.ly
# For Verify Ticket request
VerifyURL
=
/partners/cosmote/verify
...
...
warply_android_sdk/src/main/java/ly/warp/sdk/Warply.java
View file @
3efa647
...
...
@@ -503,12 +503,26 @@ public enum Warply {
INSTANCE
.
registerWarplyInternal
();
}
public
static
void
registerWarply
(
Context
context
)
{
INSTANCE
.
isInitializedOrThrow
();
INSTANCE
.
registerWarplyInternal
(
context
);
}
private
void
registerWarplyInternal
()
{
isInitializedOrThrow
();
if
(!
WarpUtils
.
isRegisteredWarply
(
mContext
))
wakeRegistrationTask
();
}
private
void
registerWarplyInternal
(
Context
context
)
{
isInitializedOrThrow
();
if
(!
WarpUtils
.
isRegisteredWarply
(
mContext
))
{
if
(!
acquireRegisterLock
())
return
;
registerToServerInternal
(
context
);
}
}
/**
* Method used to unregister from the Warply service. You also need to
* unregister from the GCM service, in order to stop receiving push
...
...
@@ -730,7 +744,7 @@ public enum Warply {
return
;
}
if
(!
WarpUtils
.
isRegisteredWarply
(
context
))
{
registerWarply
();
registerWarply
(
context
);
return
;
}
if
(
WarpUtils
.
getIsDEVICEINFOENABLED
(
context
))
...
...
@@ -1290,6 +1304,20 @@ public enum Warply {
});
}
private
void
registerToServerInternal
(
Context
context
)
{
WarpUtils
.
setLastDeviceInfo
(
mContext
,
""
);
WarpUtils
.
setLastApplicationData
(
mContext
,
""
);
WarpUtils
.
setLastApplicationUUID
(
mContext
,
WarplyProperty
.
getAppUuid
(
mContext
));
WarplyDBHelper
.
getInstance
(
mContext
).
deleteAllRequests
();
WarplyDBHelper
.
getInstance
(
mContext
).
deleteAllPushRequests
();
WarplyDBHelper
.
getInstance
(
mContext
).
deleteAllPushAckRequests
();
WarpUtils
.
setWebId
(
mContext
,
"deprecated"
);
WarpUtils
.
setApiKey
(
mContext
,
""
);
if
(
mRegistrationListener
!=
null
)
mRegistrationListener
.
onSuccess
(
ServiceRegistrationCallback
.
REGISTERED_WARPLY
);
releaseRegisterLock
();
}
private
String
buildWarplyRequestUrl
(
String
warplyPath
)
{
StringBuilder
sb
=
new
StringBuilder
(
WarplyProperty
.
getBaseUrl
(
mContext
)
+
WarpConstants
.
BASE_URL_MOBILE
);
sb
.
append
(
WarplyProperty
.
getAppUuid
(
mContext
)).
append
(
"/"
)
...
...
warply_android_sdk/src/main/java/ly/warp/sdk/activities/HomeActivity.java
View file @
3efa647
...
...
@@ -7,25 +7,30 @@ import android.util.TypedValue;
import
android.view.View
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.RelativeLayout
;
import
android.widget.TextView
;
import
androidx.annotation.NonNull
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.viewpager2.widget.ViewPager2
;
import
com.bumptech.glide.Glide
;
import
com.bumptech.glide.load.engine.DiskCacheStrategy
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
import
ly.warp.sdk.R
;
import
ly.warp.sdk.io.adapters.BannerAdapter
;
import
ly.warp.sdk.io.adapters.OfferAdapter
;
import
ly.warp.sdk.io.callbacks.CallbackReceiver
;
import
ly.warp.sdk.io.models.Campaign
;
import
ly.warp.sdk.io.models.DummyDataProvider
;
import
ly.warp.sdk.io.models.OfferCategory
;
import
ly.warp.sdk.io.models.OfferItem
;
import
ly.warp.sdk.utils.WarpUtils
;
import
ly.warp.sdk.utils.WarplyManagerHelper
;
import
ly.warp.sdk.utils.managers.WarplyManager
;
import
ly.warp.sdk.views.HorizontalSpaceItemDecoration
;
public
class
HomeActivity
extends
Activity
implements
View
.
OnClickListener
,
OfferAdapter
.
OnOfferClickListener
{
...
...
@@ -36,6 +41,9 @@ public class HomeActivity extends Activity implements View.OnClickListener, Offe
// ===========================================================
// Fields
// ===========================================================
private
RelativeLayout
mPbLoading
;
private
ViewPager2
mBannerViewPager
;
private
BannerAdapter
mBannerAdapter
;
private
LinearLayout
mDotsContainer
;
...
...
@@ -88,16 +96,18 @@ public class HomeActivity extends Activity implements View.OnClickListener, Offe
setContentView
(
R
.
layout
.
activity_home
);
initViews
();
mPbLoading
.
setVisibility
(
View
.
VISIBLE
);
WarplyManager
.
getCampaigns
(
mCampaignsCallback
);
// Setup all category sections
setupTopOffersSection
();
setupFavoritesSection
();
setupViabilitySection
();
setupFamilySection
();
setupFoodCoffeeSection
();
setupTravellingSection
();
setupKidsSection
();
setupPurchasesSection
();
//
setupTopOffersSection();
//
setupFavoritesSection();
//
setupViabilitySection();
//
setupFamilySection();
//
setupFoodCoffeeSection();
//
setupTravellingSection();
//
setupKidsSection();
//
setupPurchasesSection();
}
@Override
...
...
@@ -130,8 +140,8 @@ public class HomeActivity extends Activity implements View.OnClickListener, Offe
// ===========================================================
private
void
initViews
()
{
// Initialize banner carousel
setupBannerCarousel
(
);
mPbLoading
=
findViewById
(
R
.
id
.
pb_loading
);
mPbLoading
.
setOnTouchListener
((
v
,
event
)
->
true
);
mIvProfile
=
findViewById
(
R
.
id
.
profile_icon
);
mIvProfile
.
setOnClickListener
(
this
);
...
...
@@ -411,18 +421,18 @@ public class HomeActivity extends Activity implements View.OnClickListener, Offe
mBannerViewPager
=
findViewById
(
R
.
id
.
banner_viewpager
);
mDotsContainer
=
findViewById
(
R
.
id
.
dots_container
);
// Setup adapter with 5 banner images
List
<
Integer
>
bannerImages
=
getBannerImages
();
List
<
String
>
bannerUrls
=
getBannerUrls
();
mBannerAdapter
=
new
BannerAdapter
(
this
,
bannerImages
);
mBannerAdapter
.
setOnBannerClickListener
(
position
->
{
startActivity
(
WarpViewActivity
.
createIntentFromURL
(
this
,
WarplyManagerHelper
.
constructCampaignUrl
(
bannerUrls
.
get
(
position
))));
mBannerAdapter
=
new
BannerAdapter
(
this
,
WarplyManagerHelper
.
getCampaignList
());
mBannerAdapter
.
setOnBannerClickListener
(
campaign
->
{
startActivity
(
WarpViewActivity
.
createIntentFromURL
(
this
,
WarplyManagerHelper
.
constructCampaignUrl
(
campaign
)));
});
// Set the number of pages to preload for adjacent items
mBannerViewPager
.
setOffscreenPageLimit
(
5
);
mBannerViewPager
.
setAdapter
(
mBannerAdapter
);
// Setup pagination dots
setupPaginationDots
(
bannerImages
.
size
());
setupPaginationDots
(
WarplyManagerHelper
.
getCampaignList
()
.
size
());
// Handle page changes
mBannerViewPager
.
registerOnPageChangeCallback
(
new
ViewPager2
.
OnPageChangeCallback
()
{
...
...
@@ -434,27 +444,6 @@ public class HomeActivity extends Activity implements View.OnClickListener, Offe
}
/**
* Returns a list of banner image resource IDs
*/
private
List
<
Integer
>
getBannerImages
()
{
return
Arrays
.
asList
(
R
.
drawable
.
demo_home_banner2
,
R
.
drawable
.
demo_home_banner4
,
R
.
drawable
.
demo_home_banner3
,
R
.
drawable
.
demo_home_banner1
);
}
private
List
<
String
>
getBannerUrls
()
{
return
Arrays
.
asList
(
"https://warply.s3.amazonaws.com/dei/campaigns/match_dev/index.html"
,
"https://warply.s3.amazonaws.com/dei/campaigns/questionnaire_dev/index.html"
,
"https://warply.s3.amazonaws.com/dei/campaigns/tesla_dev/index.html"
,
"https://warply.s3.amazonaws.com/dei/campaigns/EnergySaverContest_dev/index.html"
);
}
/**
* Sets up the pagination dots
*
* @param count Number of dots to display
...
...
@@ -496,4 +485,27 @@ public class HomeActivity extends Activity implements View.OnClickListener, Offe
mDots
.
get
(
i
).
setImageResource
(
i
==
position
?
R
.
drawable
.
dot_active
:
R
.
drawable
.
dot_inactive
);
}
}
private
CallbackReceiver
<
ArrayList
<
Campaign
>>
mCampaignsCallback
=
new
CallbackReceiver
<
ArrayList
<
Campaign
>>()
{
@Override
public
void
onSuccess
(
ArrayList
<
Campaign
>
result
)
{
mPbLoading
.
setVisibility
(
View
.
GONE
);
if
(
result
!=
null
&&
!
result
.
isEmpty
())
{
// Preloads the campaigns' images
result
.
forEach
(
campaign
->
{
Glide
.
with
(
getApplicationContext
())
.
load
(
campaign
.
getLogoUrl
())
.
diskCacheStrategy
(
DiskCacheStrategy
.
DATA
)
.
preload
();
});
setupBannerCarousel
();
}
}
@Override
public
void
onFailure
(
int
errorCode
)
{
mPbLoading
.
setVisibility
(
View
.
GONE
);
}
};
}
...
...
warply_android_sdk/src/main/java/ly/warp/sdk/fragments/HomeFragment.java
View file @
3efa647
...
...
@@ -38,8 +38,8 @@ public class HomeFragment extends Fragment implements View.OnClickListener {
// 6012049321, 6012049322, 6012049323, 7000000831 history, 7000000826
// prod 6006552990, prod 6005892749, live 3000184910,prod 7000070282, live 3000136179
mPbLoading
.
setVisibility
(
View
.
VISIBLE
);
WarplyManager
.
getDehUser
(
"aggeliki@warp.ly"
,
mLoginReceiver
);
//
mPbLoading.setVisibility(View.VISIBLE);
//
WarplyManager.getDehUser("aggeliki@warp.ly", mLoginReceiver);
}
@Override
...
...
@@ -49,16 +49,6 @@ public class HomeFragment extends Fragment implements View.OnClickListener {
@Override
public
void
onClick
(
View
view
)
{
// if (view.getId() == R.id.ll_auth_login) {
// //6012049321, 6012049322, 6012049323, 7000000831 history, 7000000826, 7000000831 shared coupons
// //prod 6006552990, prod 6005892749, live 3000184910,prod 7000070282, live 3000136179
//// mPbLoading.setVisibility(View.VISIBLE);
//// WarplyManager.getDehUser(mEtGuid.getText().toString(), mLoginReceiver);
//
// Intent myIntent = new Intent(getContext(), HomeActivity.class);
// startActivity(myIntent);
// return;
// }
// if (view.getId() == R.id.ll_auth_logout) {
// mPbLoading.setVisibility(View.VISIBLE);
// WarplyManager.logout(mLogoutReceiver);
...
...
warply_android_sdk/src/main/java/ly/warp/sdk/io/adapters/BannerAdapter.java
View file @
3efa647
...
...
@@ -9,23 +9,27 @@ import android.widget.ImageView;
import
androidx.annotation.NonNull
;
import
androidx.recyclerview.widget.RecyclerView
;
import
java.util.List
;
import
com.bumptech.glide.Glide
;
import
com.bumptech.glide.load.engine.DiskCacheStrategy
;
import
java.util.ArrayList
;
import
ly.warp.sdk.R
;
import
ly.warp.sdk.io.models.Campaign
;
public
class
BannerAdapter
extends
RecyclerView
.
Adapter
<
BannerAdapter
.
BannerViewHolder
>
{
private
final
Context
mContext
;
private
final
List
<
Integer
>
mBannerImage
s
;
private
final
ArrayList
<
Campaign
>
mCampaign
s
;
private
OnBannerClickListener
mListener
;
public
interface
OnBannerClickListener
{
void
onBannerClick
(
int
positio
n
);
void
onBannerClick
(
Campaign
campaig
n
);
}
public
BannerAdapter
(
Context
context
,
List
<
Integer
>
bannerImage
s
)
{
public
BannerAdapter
(
Context
context
,
ArrayList
<
Campaign
>
campaign
s
)
{
this
.
mContext
=
context
;
this
.
m
BannerImages
=
bannerImage
s
;
this
.
m
Campaigns
=
campaign
s
;
}
public
void
setOnBannerClickListener
(
OnBannerClickListener
listener
)
{
...
...
@@ -41,18 +45,27 @@ public class BannerAdapter extends RecyclerView.Adapter<BannerAdapter.BannerView
@Override
public
void
onBindViewHolder
(
@NonNull
BannerViewHolder
holder
,
int
position
)
{
holder
.
imageView
.
setImageResource
(
mBannerImages
.
get
(
position
));
Campaign
campaignItem
=
mCampaigns
.
get
(
position
);
Glide
.
with
(
mContext
)
// .setDefaultRequestOptions(
// RequestOptions
// .placeholderOf(R.drawable.demo_logo)
// .error(R.drawable.demo_logo))
.
load
(
campaignItem
.
getLogoUrl
())
.
diskCacheStrategy
(
DiskCacheStrategy
.
DATA
)
.
into
(
holder
.
imageView
);
holder
.
itemView
.
setOnClickListener
(
v
->
{
if
(
mListener
!=
null
)
{
mListener
.
onBannerClick
(
position
);
mListener
.
onBannerClick
(
campaignItem
);
}
});
}
@Override
public
int
getItemCount
()
{
return
m
BannerImage
s
.
size
();
return
m
Campaign
s
.
size
();
}
static
class
BannerViewHolder
extends
RecyclerView
.
ViewHolder
{
...
...
warply_android_sdk/src/main/java/ly/warp/sdk/utils/WarplyManagerHelper.java
View file @
3efa647
...
...
@@ -66,6 +66,10 @@ public class WarplyManagerHelper {
mCampaignListAll
.
addAll
(
campaignList
);
}
public
static
ArrayList
<
Campaign
>
getCampaignList
()
{
return
mCampaignListAll
;
}
public
static
void
setCouponRedeemedList
(
CouponList
couponRedeemedList
)
{
mCouponRedeemedList
.
clear
();
mCouponRedeemedList
.
addAll
(
couponRedeemedList
);
...
...
warply_android_sdk/src/main/java/ly/warp/sdk/utils/managers/WarplyManager.java
View file @
3efa647
...
...
@@ -353,49 +353,20 @@ public class WarplyManager {
});
}
private
static
ArrayList
<
Campaign
>
mergeCampaignResults
(
ArrayList
<
Campaign
>
resultCampaigns
,
ArrayList
<
Campaign
>
resultPersonalizedCampaigns
,
JSONObject
resultCampaignsAvailability
)
{
private
static
ArrayList
<
Campaign
>
mergeCampaignResults
(
ArrayList
<
Campaign
>
resultCampaigns
,
ArrayList
<
Campaign
>
resultPersonalizedCampaigns
)
{
ArrayList
<
Campaign
>
newCampaignList
=
new
ArrayList
<
Campaign
>();
ArrayList
<
Campaign
>
campaignLoyaltyList
=
new
ArrayList
<>();
newCampaignList
.
clear
();
if
(
resultCampaigns
!=
null
&&
resultCampaigns
.
size
()
>
0
)
if
(
resultCampaigns
!=
null
&&
!
resultCampaigns
.
isEmpty
())
newCampaignList
.
addAll
(
resultCampaigns
);
if
(
resultPersonalizedCampaigns
!=
null
&&
resultPersonalizedCampaigns
.
size
()
>
0
)
if
(
resultPersonalizedCampaigns
!=
null
&&
!
resultPersonalizedCampaigns
.
isEmpty
()
)
newCampaignList
.
addAll
(
resultPersonalizedCampaigns
);
if
(
newCampaignList
!=
null
&&
newCampaignList
.
size
()
>
0
)
{
Collections
.
sort
(
newCampaignList
,
(
obj1
,
obj2
)
->
Integer
.
compare
(
obj1
.
getSorting
(),
obj2
.
getSorting
()));
campaignLoyaltyList
.
clear
();
for
(
Campaign
camp
:
newCampaignList
)
{
if
(
resultCampaignsAvailability
!=
null
&&
resultCampaignsAvailability
.
length
()
>
0
)
{
JSONObject
campaignSettings
=
WarpJSONParser
.
getJSONFromString
(
camp
.
getCampaignTypeSettings
());
if
(
campaignSettings
!=
null
)
{
if
(
campaignSettings
.
has
(
"couponset"
))
{
String
cpnUuid
=
campaignSettings
.
optString
(
"couponset"
);
if
(
resultCampaignsAvailability
.
has
(
cpnUuid
))
{
camp
.
setCouponAvailability
(
resultCampaignsAvailability
.
optInt
(
cpnUuid
));
}
}
}
}
if
(
newCampaignList
!=
null
&&
!
newCampaignList
.
isEmpty
())
{
newCampaignList
.
sort
((
obj1
,
obj2
)
->
Integer
.
compare
(
obj1
.
getSorting
(),
obj2
.
getSorting
()));
try
{
JSONObject
extraFields
=
WarpJSONParser
.
getJSONFromString
(
camp
.
getExtraFields
());
if
(
extraFields
!=
null
)
{
if
(
extraFields
.
length
()
==
0
||
!(
extraFields
.
has
(
"ccms_offer"
)
||
extraFields
.
has
(
"type"
)))
{
if
(
camp
.
getCouponAvailability
()
==
null
||
camp
.
getCouponAvailability
()
!=
0
)
campaignLoyaltyList
.
add
(
camp
);
}
}
}
catch
(
Exception
exception
)
{
if
(
camp
.
getCouponAvailability
()
==
null
||
camp
.
getCouponAvailability
()
!=
0
)
campaignLoyaltyList
.
add
(
camp
);
}
}
WarplyManagerHelper
.
setCampaignList
(
newCampaignList
);
Set
<
Campaign
>
set
=
new
LinkedHashSet
<>(
campaignLoyaltyList
);
campaignLoyaltyList
.
clear
();
Set
<
Campaign
>
set
=
new
LinkedHashSet
<>(
newCampaignList
);
campaignLoyaltyList
.
addAll
(
set
);
WarplyManagerHelper
.
setCampaignList
(
campaignLoyaltyList
);
}
return
campaignLoyaltyList
;
...
...
@@ -444,14 +415,12 @@ public class WarplyManager {
ListenableFuture
<
ArrayList
<
Campaign
>>
futureCampaigns
=
getCampaignsRetro
(
service
);
SettableFuture
<
ArrayList
<
Campaign
>>
futurePersonalized
=
SettableFuture
.
create
();
ListenableFuture
<
ArrayList
<
Campaign
>>
futurePersonalizedCampaigns
=
getCampaignsPersonalizedRetro
(
service
,
0
,
futurePersonalized
);
ListenableFuture
<
JSONObject
>
futureCampaignAvailability
=
getCampaignAvailability
(
service
);
ListenableFuture
<
List
<
Object
>>
allResultsFuture
=
Futures
.
allAsList
(
futureCampaigns
,
futurePersonalizedCampaigns
,
futureCampaignAvailability
);
ListenableFuture
<
List
<
Object
>>
allResultsFuture
=
Futures
.
allAsList
(
futureCampaigns
,
futurePersonalizedCampaigns
);
ListenableFuture
<
ArrayList
<
Campaign
>>
mergedResultFuture
=
Futures
.
transformAsync
(
allResultsFuture
,
results
->
{
ArrayList
<
Campaign
>
resultCampaigns
=
(
ArrayList
<
Campaign
>)
results
.
get
(
0
);
ArrayList
<
Campaign
>
resultPersonalizedCampaigns
=
(
ArrayList
<
Campaign
>)
results
.
get
(
1
);
JSONObject
resultCampaignsAvailability
=
(
JSONObject
)
results
.
get
(
2
);
return
executorService
.
submit
(()
->
mergeCampaignResults
(
resultCampaigns
,
resultPersonalizedCampaigns
,
resultCampaignsAvailability
));
return
executorService
.
submit
(()
->
mergeCampaignResults
(
resultCampaigns
,
resultPersonalizedCampaigns
));
},
executorService
);
Futures
.
addCallback
(
mergedResultFuture
,
new
FutureCallback
<
ArrayList
<
Campaign
>>()
{
...
...
@@ -734,6 +703,10 @@ public class WarplyManager {
}
}
});
}
else
if
(
response
.
code
()
==
502
)
{
// receiver.onFailure(response.code());
// future.set(new ArrayList<Campaign>());
future
.
set
(
new
ArrayList
<
Campaign
>());
}
else
{
// receiver.onFailure(response.code());
// future.set(new ArrayList<Campaign>());
...
...
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner1.png
deleted
100644 → 0
View file @
8854301
84.9 KB
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner2.png
deleted
100644 → 0
View file @
8854301
96.3 KB
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner3.png
deleted
100644 → 0
View file @
8854301
127 KB
warply_android_sdk/src/main/res/drawable-xhdpi/demo_home_banner4.png
deleted
100644 → 0
View file @
8854301
203 KB
warply_android_sdk/src/main/res/layout/activity_home.xml
View file @
3efa647
...
...
@@ -78,6 +78,28 @@
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
/>
<RelativeLayout
android:id=
"@+id/pb_loading"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@android:color/transparent"
app:layout_constraintStart_toStartOf=
"@+id/banner_viewpager"
app:layout_constraintEnd_toEndOf=
"@+id/banner_viewpager"
app:layout_constraintTop_toTopOf=
"@+id/banner_viewpager"
app:layout_constraintBottom_toBottomOf=
"@+id/banner_viewpager"
android:translationZ=
"100dp"
android:visibility=
"gone"
tools:visibility=
"visible"
>
<ProgressBar
android:layout_width=
"48dp"
android:layout_height=
"48dp"
android:layout_centerInParent=
"true"
android:indeterminate=
"true"
android:indeterminateTint=
"@color/custom_light_blue"
android:indeterminateTintMode=
"src_atop"
/>
</RelativeLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
<!-- Top Offers Section -->
...
...
warply_android_sdk/src/main/res/layout/fragment_home.xml
View file @
3efa647
...
...
@@ -22,7 +22,7 @@
android:id=
"@+id/user_img"
android:layout_width=
"60dp"
android:layout_height=
"60dp"
android:src=
"@drawable/demo_
logo_small
"
android:src=
"@drawable/demo_
profile
"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
...
...
warply_android_sdk/src/main/res/layout/item_banner.xml
View file @
3efa647
...
...
@@ -8,7 +8,7 @@
android:id=
"@+id/iv_banner"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:scaleType=
"
fitXY
"
android:scaleType=
"
centerCrop
"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
...
...
Please
register
or
login
to post a comment