SDK Customization

SDK Customization

The PageSense Android Full Stack SDK provides customization options that allow you to control how the SDK behaves inside your application. These options help you balance freshness of experiment configuration, logging verbosity, and operational stability.

SDK customization is optional. If you do not configure any options, the SDK runs with sensible defaults.

What can be customized  

Using SDK customization, you can configure:

  • Polling interval for refreshing project settings

  • Custom logger for handling SDK logs

  • Log level control through your logging implementation

All customizations are applied during SDK initialization using PageSenseSDKOptions.

Polling configuration  

The SDK uses polling to refresh Full Stack project settings. You can configure how frequently polling occurs.

Polling rules  

  • Default polling interval: 5 minutes

  • Polling interval must be 5 minutes or higher

  • Any value below 5 minutes is not permitted

  • If a value lower than 5 minutes is provided, it is automatically normalised to 15 minutes

Polling is triggered only when the app is active and follows the lifecycle rules described in the Project Settings documentation.

Setting polling interval  

Polling interval is specified in minutes.

JAVA Example  

  1. PageSenseSDKOptions pageSenseSDKOptions = new PageSenseSDKOptions();
  2. pageSenseSDKOptions.setPollingInterval(10); // in minutes

KOTLIN Example  

  1. val pageSenseSDKOptions = PageSenseSDKOptions()
  2. pageSenseSDKOptions.pollingInterval = 10 // in minutes

Custom logging  

By default, the SDK logs messages using its internal logger.
If your application uses a centralized logging framework, you can plug in a custom logger to capture and manage SDK logs yourself.

When a custom logger is configured:

  • All SDK logs are routed through your logger

  • You control where and how logs are stored or displayed

Creating a custom logger  

Your custom logger must implement the PageSenseLogger interface and handle log messages at different severity levels.

JAVA Example  

  1. PageSenseLogger pageSenseLogger = new PageSenseLogger() {
  2.  
  3.     @Override
  4.     public void severe(@Nullable String logMessage) {
  5.     }
  6.  
  7.     @Override
  8.     public void error(@Nullable String logMessage) {
  9.     }
  10.  
  11.     @Override
  12.     public void warn(@Nullable String logMessage) {
  13.     }
  14.  
  15.     @Override
  16.     public void info(@Nullable String logMessage) {
  17.     }
  18.  
  19.     @Override
  20.     public void debug(@Nullable String logMessage) {
  21.     }
  22.  
  23.     @Override
  24.     public void trace(@Nullable String logMessage) {
  25.     }
  26. };

KOTLIN Example  

  1. val pageSenseLogger = object : PageSenseLogger() {
  2.  
  3.     override fun severe(logMessage: String?) {
  4.     }
  5.  
  6.     override fun error(logMessage: String?) {
  7.     }
  8.  
  9.     override fun warn(logMessage: String?) {
  10.     }
  11.  
  12.     override fun info(logMessage: String?) {
  13.     }
  14.  
  15.     override fun debug(logMessage: String?) {
  16.     }
  17.  
  18.     override fun trace(logMessage: String?) {
  19.     }
  20. }

Applying SDK options during initialization  

Once polling and logging options are configured, pass the PageSenseSDKOptions object while initializing the SDK.

JAVA Example  

  1. PageSenseSDKOptions pageSenseSDKOptions = new PageSenseSDKOptions();
  2. pageSenseSDKOptions.setPollingInterval(10); // in minutes
  3. pageSenseSDKOptions.setCustomLogger(pageSenseLogger);
  4.  
  5. PageSenseClientBuilder.createNewPageSenseClient(
  6.     "sdkAccountId",
  7.     "sdkKey",
  8.     "projectName",
  9.     pageSenseSDKOptions,
  10.     new ProjectSettingsCallBack() {
  11.  
  12.         @Override
  13.         public void onFailure(@NotNull String message, @Nullable Integer code) {
  14.         }
  15.  
  16.         @Override
  17.         public void onSuccess(PageSenseClient client) {
  18.             // PageSenseClient is initialized with custom options
  19.             pageSenseClient = client;
  20.         }
  21.     }
  22. );

 

KOTLIN Example  

  1. val pageSenseSDKOptions = PageSenseSDKOptions()
  2. pageSenseSDKOptions.pollingInterval = 10 // in minutes
  3. pageSenseSDKOptions.customLogger = pageSenseLogger
  4.  
  5. PageSenseClientBuilder.createNewPageSenseClient(
  6.     "sdkAccountId",
  7.     "sdkKey",
  8.     "projectName",
  9.     pageSenseSDKOptions,
  10.     object : ProjectSettingsCallBack {
  11.  
  12.         override fun onFailure(message: String, code: Int?) {
  13.         }
  14.  
  15.         override fun onSuccess(client: PageSenseClient?) {
  16.             // PageSenseClient is initialized with custom options
  17.             pageSenseClient = client
  18.         }
  19.     }
  20. )

Log levels  

The SDK supports multiple log severity levels, including:

  • TRACE

  • DEBUG

  • INFO

  • WARN

  • ERROR

  • SEVERE

When using a custom logger, log level handling is fully controlled by your implementation.
This allows you to:

  • Suppress verbose logs in production

  • Enable detailed logs during development

  • Integrate with existing logging pipelines

Best practices  

  • Use the default polling interval unless you have a clear need to change it

  • Avoid aggressive polling to reduce network and battery usage

  • Use a custom logger in production environments

  • Keep verbose logging (DEBUG / TRACE) limited to development builds

What happens if customization is not used  

If no SDK options are provided:

  • Default polling behavior is applied

  • Internal SDK logging is used

  • The SDK operates safely with standard defaults


      Create. Review. Publish.

      Write, edit, collaborate on, and publish documents to different content management platforms.

      Get Started Now


        Access your files securely from anywhere

          Zoho CRM Training Programs

          Learn how to use the best tools for sales force automation and better customer engagement from Zoho's implementation specialists.

          Zoho CRM Training
            Redefine the way you work
            with Zoho Workplace

              Zoho DataPrep Personalized Demo

              If you'd like a personalized walk-through of our data preparation tool, please request a demo and we'll be happy to show you how to get the best out of Zoho DataPrep.

              Zoho CRM Training

                Create, share, and deliver

                beautiful slides from anywhere.

                Get Started Now


                  Zoho Sign now offers specialized one-on-one training for both administrators and developers.

                  BOOK A SESSION







                              Quick LinksWorkflow AutomationData Collection
                              Web FormsEnterpriseOnline Data Collection Tool
                              Embeddable FormsBankingBegin Data Collection
                              Interactive FormsWorkplaceData Collection App
                              CRM FormsCustomer ServiceAccessible Forms
                              Digital FormsMarketingForms for Small Business
                              HTML FormsEducationForms for Enterprise
                              Contact FormsE-commerceForms for any business
                              Lead Generation FormsHealthcareForms for Startups
                              Wordpress FormsCustomer onboardingForms for Small Business
                              No Code FormsConstructionRSVP tool for holidays
                              Free FormsTravelFeatures for Order Forms
                              Prefill FormsNon-Profit

                              Intake FormsLegal
                              Mobile App
                              Form DesignerHR
                              Mobile Forms
                              Card FormsFoodOffline Forms
                              Assign FormsPhotographyMobile Forms Features
                              Translate FormsReal EstateKiosk in Mobile Forms
                              Electronic Forms
                              Drag & drop form builder

                              Notification Emails for FormsAlternativesSecurity & Compliance
                              Holiday FormsGoogle Forms alternative GDPR
                              Form to PDFJotform alternativeHIPAA Forms
                              Email FormsFormstack alternativeEncrypted Forms

                              Wufoo alternativeSecure Forms

                              TypeformWCAG

                                All-in-one knowledge management and training platform for your employees and customers.


                                            Create. Review. Publish.

                                            Write, edit, collaborate on, and publish documents to different content management platforms.

                                            Get Started Now




                                                              You are currently viewing the help pages of Qntrl’s earlier version. Click here to view our latest version—Qntrl 3.0's help articles.




                                                                  Manage your brands on social media


                                                                    • Desk Community Learning Series


                                                                    • Digest


                                                                    • Functions


                                                                    • Meetups


                                                                    • Kbase


                                                                    • Resources


                                                                    • Glossary


                                                                    • Desk Marketplace


                                                                    • MVP Corner


                                                                    • Word of the Day


                                                                    • Ask the Experts


                                                                      Zoho Sheet Resources

                                                                       

                                                                          Zoho Forms Resources


                                                                            Secure your business
                                                                            communication with Zoho Mail


                                                                            Mail on the move with
                                                                            Zoho Mail mobile application

                                                                              Stay on top of your schedule
                                                                              at all times


                                                                              Carry your calendar with you
                                                                              Anytime, anywhere




                                                                                    Zoho Sign Resources

                                                                                      Sign, Paperless!

                                                                                      Sign and send business documents on the go!

                                                                                      Get Started Now




                                                                                              Zoho TeamInbox Resources





                                                                                                        Zoho DataPrep Demo

                                                                                                        Get a personalized demo or POC

                                                                                                        REGISTER NOW


                                                                                                          Design. Discuss. Deliver.

                                                                                                          Create visually engaging stories with Zoho Show.

                                                                                                          Get Started Now








                                                                                                                              • Related Articles

                                                                                                                              • Initialization of Android Full Stack SDK

                                                                                                                                After installing the PageSense Android Full Stack SDK, the next step is to initialize it with your project configuration. Initialization connects your app to PageSense and loads the Full Stack project settings required to run experiments. In Android, ...
                                                                                                                              • Installation of Android SDK

                                                                                                                                The PageSense Android Full Stack SDK lets you run server-side A/B tests and track experiment outcomes directly from your Android application. Once installed, your app can participate in Full Stack experiments and start collecting core analytics data. ...
                                                                                                                              • SDK Customization

                                                                                                                                PageSense SDK provides a flexible configuration model that allows developers to adapt its behavior to suit the needs of their application. While the SDK can be used with minimal setup using the default configuration, applications with stricter ...
                                                                                                                              • Activate Experiment

                                                                                                                                The Activate Experiment step evaluates whether a user qualifies for a Full Stack A/B test and assigns a variation accordingly. This is the point where your application decides which experience a user should see. The experiment activation logic runs ...
                                                                                                                              • Get Variation Name

                                                                                                                                The Get Variation Name API allows you to retrieve the variation assigned to a user for a specific Full Stack A/B experiment without re-evaluating or re-activating the experiment. This is useful when you want to: Fetch the already assigned variation ...
                                                                                                                                Wherever you are is as good as
                                                                                                                                your workplace

                                                                                                                                  Resources

                                                                                                                                  Videos

                                                                                                                                  Watch comprehensive videos on features and other important topics that will help you master Zoho CRM.



                                                                                                                                  eBooks

                                                                                                                                  Download free eBooks and access a range of topics to get deeper insight on successfully using Zoho CRM.



                                                                                                                                  Webinars

                                                                                                                                  Sign up for our webinars and learn the Zoho CRM basics, from customization to sales force automation and more.



                                                                                                                                  CRM Tips

                                                                                                                                  Make the most of Zoho CRM with these useful tips.



                                                                                                                                    Zoho Show Resources