Skip to content

Customization: Basic

Dani Mahardhika edited this page Jun 26, 2017 · 44 revisions

NOTE: Customization mostly related to the dashboard, not Icon Pack.

Files that you need to see:

  1. dashboard_configurations.xml
  2. License.java
  3. dashboard_icon_pack.xml
  4. changelog.xml

1. Dashboard Configurations

Open dashboard_configurations.xml inside values folder, there will be a lot of options to configure the dashboard.

Theme

  • use_dark_theme(true) Use dark theme as default theme. (false) Use light theme as default theme.

Muzei Live Wallpaper

  • muzei_art_source_name → Muzei Live Wallpaper art source name.
  • muzei_art_source_desc → Muzei Live Wallpaper art source description.
  • muzei_color → Muzei Live Wallpaper art source color.
  • ic_muzei_logo.png → Muzei art source icon located in drawable-xxxhdpi folder. Replace it with your own icon.

Splash Screen

  • ic_splash_screen.png → Splash screen icon located in drawable-nodpi folder. Replace it with your own icon.

Home

  • home_title → Text below home image
  • home_image → Home image, you can use drawable or image url for home image. If you don't want to show image just set to empty <string name="home_image"></string>.

Home image should have 16:9 aspect ratio

  • home_description → Description below home image. If you don't want to show description just set this to empty <string name="home_description"></string>.
  • google_play_dev → Link to google play store developer. If you don't want to show this just set to empty <string name="google_play_dev"></string>.

Navigation Drawer

  • navigation_view_header → Navigation drawer header image, you can use drawable or image url. If you don't want to show image just set to empty <string name="navigation_view_header"></string>.

Navigation view header should have 4:3 aspect ratio

  • navigation_view_header_title → Text on navigation drawer header. If you don't want to show text just set to empty <string name="navigation_view_header_title"></string>.

Icon Request

NOTE: Icon request reads appfilter.xml from xml folder.

  • enable_icon_request(true) Enable regular icon request. (false) Disable regular icon request.
  • enable_icon_request_limit(true) Enable regular icon request limit. (false) Disable regular icon request limit.
  • icon_request_limit → Regular icon request limit count. Example if you set icon_request_limit = 10, user only able to make 10 request in all time. If regular icon request limit is disabled (enable_icon_request_limit = false), just ignore this.
  • reset_icon_request_limit → Regular icon request used count will be reset to 0 after the update. User only able to make specific number of request on each icon pack version. If regular icon request limit is disabled (enable_icon_request_limit = false), just ignore this.
  • enable_premium_request(true) Enable premium icon request, pay to request. (false) Disable premium icon request.
  • dev_email → Email address that will be used to send icon request.

Cloud Wallpapers

  • wallpaper_json → Wallpaper json link. You can see json example here. Already have different json? read here to use different json structure. If your Icon Pack doesn't contains any wallpaper, just set to empty <string name="wallpaper_json"></string>. Wallpapers section in navigation drawer will not visible.

NOTE: Your wallpaper format MUST be *.jpeg or *.jpg.

  • enable_wallpaper_download(true) User able to download wallpaper. (false) User not able to download wallpaper, but user still able to apply wallpaper from dashboard.
  • card_wallpaper_auto_generated_color(true) Wallpaper card background color will be generated automatically based on wallpaper vibrant color. (false) Wallpaper card background will remain white or dark grey depends on theme used, light or dark.
  • wallpaper_show_name_author(true) Show name and author below wallpaper. (false) Hide name and author below wallpaper.

About

  • about_image → About header image, you can use drawable or image url for about header image. If you don't want to show image just set to empty <string name="about_image"></string>.

About image should have 16:7 aspect ratio

  • about_profile_image → Profile image on about header, you can use drawable or image url for profile image.
  • about_title → Text below about_profile_image.
  • about_desc → Text below about_title.
  • about_social_links → Social link inside about, supported url Email, Behance, Dribbble, Facebook, Github, Google+, Instagram, Pinterest, Twitter. The link will be marked as regular website if doesn't listed.

Here an example

<string-array name="about_social_links">
    <item>https://www.instagram.com/_u/yourusername</item>
    <item>https://twitter.com/</item>
    <item>https://www.behance.net/</item>
    <item>https://plus.google.com/u/1/+yourusername</item>
    <item>http://github.com/yourusername</item>
    <item>http://www.yourwebsite.com</item>
    <item>your@email.com</item>
</string-array>
  • show_contributors_dialog → Show contributors dialog inside about section. Take a look inside values/xml/contributors.xml to add contributors.

Donation

  • enable_donation(true) Enable and show donation in navigation drawer. (false) Disable and hide donation in navigation drawer.

Icons

  • show_icon_name(true) Show icon name below icon. (false) Hide icon name below icon.
  • enable_icons_sort(true) Dashboard will sort icon list from drawable.xml alphabetically. (false) Dashboard will leave icon list from drawable.xml as it is. By disabling this, icons section will load faster. You can use CandyBar Icons Builder to generate drawable.xml that already sorted.

2. License Checker, Donation and Premium Request

NOTE: IF YOU DISABLE LICENSE CHECKER, DONATION AND PREMIUM REQUEST, JUST IGNORE THIS.

But if you enable one of them, License Checker, Donation, Premium Request or three of them, you need to open License.java inside licenses package.

  • private static final boolean ENABLE_LICENSE_CHECKER(true) Enable license checker. (false) Disable license checker.
  • private static final byte[] SALT → Random bytes. For easy way you can go to this site www.random.org
  1. Set generate 20 random strings.
  2. Each string should be 2 character long.
  3. Check numeric digit (0-9).
  4. Choose each string should be unique
  5. Get string

Here an example

private static final byte[] SALT = new byte[] {
    66, 57, 94, 14, 05, 33, 22, 55, 10, 48, 90, 45, 40, 02, 36, 88, 76, 71, 86, 51
};
  • private static final String LICENSE_KEY → You can get your license key from Google Developer Console. Open your app, choose Services & APIs, you will see your license key there.

Here an example

private static final String LICENSE_KEY = "abvd$dsfb1235sdfb125...";

NOTE: You need to setup SALT and LICENSE_KEY if you enable License Checker. You need to setup only LICENSE_KEY if you disable License Checker and enable Donation or Premium Request.

  • private static final InAppBilling[] PREMIUM_REQUEST_PRODUCTS → Premium request InApp Product Id and Premium request count.
  • private static final InAppBilling[] DONATION_PRODUCT → Donation InApp Product Id.

More info about InApp-Purchase can be found here.

4. Icon Pack Related

Open dashboard_icon_pack.xml inside values folder.

Icon Pack Icon

Take a look inside mipmap- folder. Replace icon.png with your own icon.

Icon Pack Name

  • app_name
  • theme_title
  • theme_name

Icon Pack Creator

  • theme_author
  • developer_name
  • developerName
  • authorName

Icon Pack Developer Website

  • authorLink
  • developer_link

Icon Pack Description

  • theme_description
  • theme_info
  • theme_ad_msg

Icon Pack Feature Image for Apex Launcher

  • theme_feature → Feature image name without extension.

Icon Pack Previews Image

  • theme_preview1 → Preview image name without extension.
  • theme_preview2 → Preview image name without extension.

5. Changelog

Open changelog.xml inside values folder, changelog support html formatting.

  • changelog_date → Version date, will be shown below version number in changelog dialog. If you don't want to show date, just set changelog_date to empty <string name="changelog_date"></string>.
  • changelog → Your changelog. Support html formatting.
    <b>Text</b>Bold text
    <i>Text</i>Italic text
    <u>Text</u>Underline text

Change Icon Pack Version

Open module:app build.gradle.

  • versionCode
  • versionName