App developer with an eye for design. Loves to create apps with good UI/ UX that doesn't annoy people. In his spare time, he likes to draw and paint.

You may also like...

  • Namsi Abdelkhalek

    the dashboard doesn’t contain settings!!

    • Hi Namsi,
      Parse has unfortunately decided to shut down. They no longer provide a self-hosting option. But they still allow you to self host the software.
      As a result, the Parse dashboard has changed too. The Settings you ask for defining for Facebook constants, now reside in a config file.
      Here’s a guide that can quickly show you how to deploy Parse locally:
      Good luck!

      • Namsi Abdelkhalek

        It worked well without doing that step.
        Thank you very much. This was so helpful 🙂

  • Utkersh Reuben Khanna

    Always Getting “Uh oh. The user cancelled the Facebook login.”

    • That’s not supposed to happen and personally haven’t come across this.
      Please cross check by retracing your steps to see if you’ve followed correctly.

      • Utkersh Reuben Khanna

        Sir Even the git hub example is not working for me it gives the same error

  • John

    Hi Suleiman19, thanks for writing this up! I have follow the steps listed, and I have been running into a different error. My app crashes with this error:

    java.lang.NoClassDefFoundError: com.parse.ParseFacebookUtils$1

    at the ParseFacebookUtils.initialize(this) line. I have read that this has been a problem for others occasionally, but have found no good solutions that work. From what I can understand, simply it is because my compiler can’t find some file that contains a class, but I’m not sure how to find it if I’ve imported the proper libraries and declared all of the necessary dependencies in my Gradle build. If you’ve run into this or had to fix it please let me know. Thanks!

    • Hi John,
      I recently updated the Parse tutorials. Migrated to gradle from JAR files and faced no such issues.
      I suggest you refer to my GitHub repository to cross check where your issue might be.
      Link available in part 2 end.

  • Boon Yao

    Hi suleiman19, I face problem here. Can i ask my problem here?

    I stuck at getting key hash with your code provided.
    The line ” md.update(signature.toByteArray()); has red line error.

    Error:(33, 36) error: cannot find symbol method toByteArray()

    Can you kindly give a help here? thanks in advance. 🙂

    • Boon Yao

      Part 1 done, phewwww -.-”. Please help with the problem. thanks a lot

    • Hi there,
      That code snippet I use for generating the key hash is provided by Facebook itself. I’ve tested with the new SDKs and can confirm it works.
      You might want to cross check here:

    • PS: You must import;

  • Michael Lorenz Jimenez- Labrad

    thank you for posting this!

  • Z

    Hi, I followed all your instructions but got this:

    Error:Execution failed for task ‘:app:dexDebug’.
    > org.gradle.process.internal.ExecException: Process ‘command ‘/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/java” finished with non-zero exit value 2

    Would you be able to give some pointers as to what is the error i have made?

    • Hi there,

      This kind of error happens when you’ve included a library more than once. Please recheck any duplicate Jars or libraries in your build.gradle file.

      Here’s a similar problem on StackOverflow. Should help you:

      • Z

        I am looking at the instructions on

        In step 4, it talks about this problem:

        Add com.parse:parsefacebookutils-v4-android:1.10.3@aar to your Gradle dependencies. This includes the contents of the Parse-*.jar and the com.parse:parse-android:1.10.+ repository, so be sure to remove as needed to prevent duplicate dependencies, otherwise will be thrown.

        Do you mind explaining what they mean by com.parse:parsefacebookutils-v4-android:1.10.3@aar includes the contents of the Parse-*.jar and the com.parse:parse-android:1.10.+ repository?


      • It simply says what I said earlier. Remove duplicate library imports.

        If you add com.parse:parsefacebookutils-v4-android:1.10.3@aar,

        then remove all Parse related .jars and the com.parse:parse-android import as well.

      • Z

        I see. It was fine after I changed the dependencies to the following:

        dependencies {
        compile fileTree(dir: ‘libs’, include: [‘*.jar’])
        testCompile ‘junit:junit:4.12’
        compile ‘’
        compile ‘com.parse.bolts:bolts-android:1.2.0’
        compile ‘’

        However, I tried to do the same thing using the Twitter login for Parse and it doesn’t work, even though the instructions are similar (

        dependencies {
        compile fileTree(dir: ‘libs’, include: [‘*.jar’])
        testCompile ‘junit:junit:4.12’
        compile ‘’
        compile ‘com.parse.bolts:bolts-android:1.2.0’
        compile ‘com.parse:parsetwitterutils-android:1.10.+’

        Would you mind enlightening me on what I have done wrong? Thanks!

      • I don’t understand what you’re trying to do here. Are you trying to user Twitter AND Facebook? Why are there 2 dependencies tags?
        My only suggestion to you would be to either ask Parse directly asking about Twitter + Facebook integration, or post on StackOverflow.

  • Radzhab Ahvahsky

  • Radzhab Ahvahsky

    Suleiman, good day. I cannot find post where you describe this project.

    I have one question. I add 4 elements to adapter(pic 1). I want rise method ClickMe in third instance of CheeseListFragment from MainActivity. How i make it?

Subscribe to stay updated
You'll be first to know about new articles and more. They're sent straight to your inbox!
No Spam, no BS. Promise. You can unsubscribe anytime.
Gradle setup, ProGuard rules, Material Design palette, metrics and much more

FREE Material Design Starter Project

For more details, click on the below link.
Download FREE
Material Design Template Project for Android Studio
95% OFF on Machine Learning with Python Course

Use Coupon Code: CODESTARS