EzDevInfo.com

parse.com interview questions

Top parse.com frequently asked interview questions

Impact of Xcode build options "Enable bitcode" Yes/No

Yesterday I recognized a ton of warnings regarding the parse.com library:

URGENT: all bitcode will be dropped because '[path]/Parse.framework/Parse(PFAnalytics.o)' was built without bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. Note: This will be an error in the future.

I am aware of the fact that I can remove those warning with this answer but am now wondering if it will have any negative impact in regards to AppStore submission and / or actual performance of my app.

Xcode informs you regarding bitcode

Activating this setting indicates that the target or project should generate bitcode during compilation for platforms and architectures which support it. For Archive builds, bitcode will be generated in the linked binary for submission to the app store. For other builds, the compiler and linker will check whether the code complies with the requirements for bitcode generation, but will not generate actual bitcode. [ENABLE_BITCODE]

But I am not getting any really useful information out of this text.

  • Can I use the linked answer to circumvent the issue without any negative impact and without compromising a future AppStore submission?
  • What does the ENABLE_BITCODE actually do, will it be a non-optional requirement in the future?
  • Are there any performance impacts if I enable / disable it?

Source: (StackOverflow)

How scalable is Parse? [closed]

I've been considering using Parse.com's service for my backend, but I'm skeptical about its scalability.

Can it really handle several thousand simultaneous users? If not, is their any good way transitioning away from it?


Source: (StackOverflow)

Advertisements

How To Add Parse to an Android Studio Project?

I'm trying to use the Parse library in Android Studio. I have used the basic example on their website and added the jar to the libs folder as well as added as a global library. Nothing seems to be working without errors:

Gradle: package com.parse does not exist
Gradle: package com.parse does not exist
Gradle: package com.parse does not exist
Gradle: cannot find symbol variable Parse
Gradle: cannot find symbol variable ParseAnalytics
Gradle: cannot find symbol class ParseObject 
Gradle: cannot find symbol class ParseObject

Android Studio gives no errors in the code.


Source: (StackOverflow)

Parse for iOS: Errors when trying to run the app

I've been working with the Parse SDK and I followed the quickstep guide. When I try to run, I get these 8 errors. Any ideas as to why? It looks like something to do with the Facebook part of Parse which I'm not using.

 Undefined symbols for architecture armv7:
"_FBTokenInformationTokenKey", referenced from:
  -[PFFacebookTokenCachingStrategy accessToken] in Parse(PFFacebookTokenCachingStrategy.o)
  -[PFFacebookTokenCachingStrategy setAccessToken:] in Parse(PFFacebookTokenCachingStrategy.o)
 "_FBTokenInformationExpirationDateKey", referenced from:
  -[PFFacebookTokenCachingStrategy cacheTokenInformation:] in     Parse(PFFacebookTokenCachingStrategy.o)
  -[PFFacebookTokenCachingStrategy expirationDate] in Parse(PFFacebookTokenCachingStrategy.o)
  -[PFFacebookTokenCachingStrategy setExpirationDate:] in Parse(PFFacebookTokenCachingStrategy.o)
 "_OBJC_METACLASS_$_FBSessionTokenCachingStrategy", referenced from:
  _OBJC_METACLASS_$_PFFacebookTokenCachingStrategy in Parse(PFFacebookTokenCachingStrategy.o)
"_OBJC_CLASS_$_FBSessionTokenCachingStrategy", referenced from:
  _OBJC_CLASS_$_PFFacebookTokenCachingStrategy in Parse(PFFacebookTokenCachingStrategy.o)
"_FBTokenInformationUserFBIDKey", referenced from:
  -[PFFacebookTokenCachingStrategy facebookId] in Parse(PFFacebookTokenCachingStrategy.o)
  -[PFFacebookTokenCachingStrategy setFacebookId:] in Parse(PFFacebookTokenCachingStrategy.o)
"_OBJC_CLASS_$_FBRequest", referenced from:
  objc-class-ref in Parse(PFFacebookAuthenticationProvider.o)
"_OBJC_CLASS_$_FBSession", referenced from:
  objc-class-ref in Parse(PFFacebookAuthenticationProvider.o)
 ld: symbol(s) not found for architecture armv7
 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Source: (StackOverflow)

Parse Cloud Code relational query syntax

I have a cloud function on Parse. When it's called it retrieves a PFObject then adds a relation between that object and the user. This part works fine (Seen towards the end of the function). I'm having trouble getting the query that selects the PFObject to ignore those that the user is already related to

Here is my code:

Parse.Cloud.define("NextMedia", function (request, response) {

    var LikeRequest = Parse.Object.extend("LikeRequest");
    var query = new Parse.Query(LikeRequest);

    query.equalTo("completed", false);
    console.log("user: " + Parse.User.current().id);

    query.notEqualTo("user", Parse.User.current());

    // Also only fetch if never been sent before 
    // HERE SHOULD USE THE BELOW RELATIONSHIP
    var innerQuery = new Parse.Query(Parse.User);
    innerQuery.exists(Parse.User);
    query.matchesQuery("sentTo", innerQuery);

    query.ascending("createdAt");

    query.first({

        success: function (object) {
            // Successfully retrieved the object.
            console.log("Got 1 object: " + object.get('mediaId'));

            // Record that the user has been sent it
            var user = Parse.User.current();
            var relation = object.relation("sentTo"); // RELATION ADDED HERE

            relation.add(user);
            object.save();

            response.success(object);
        },
        error: function (error) {
            console.log("Error: " + error.code + " " + error.message);

            response.error("Error getting next mediaId");
        }
    });
});

I'm sure i'm just not understanding how the relation query syntax works.


Source: (StackOverflow)

My app was just rejected for using the Ad support framework. Which library is responsible?

This was simply an update that didn't change anything to do with the rejection reason. Here is the response from the resolution center:

Reasons Program License Agreement PLA 3.3.12

We found your app uses the iOS Advertising Identifier but does not include ad functionality. This does not comply with the terms of the iOS Developer Program License Agreement, as required by the App Store Review Guidelines.

Specifically, section 3.3.12 of the iOS Developer Program License Agreement states:

"You and Your Applications (and any third party with whom you have contracted to serve advertising) may use the Advertising Identifier, and any information obtained through the use of the Advertising Identifier, only for the purpose of serving advertising. If a user resets the Advertising Identifier, then You agree not to combine, correlate, link or otherwise associate, either directly or indirectly, the prior Advertising Identifier and any derived information with the reset Advertising Identifier."

Please check your code - including any third-party libraries - to remove any instances of:

class: ASIdentifierManager
selector: advertisingIdentifier
framework: AdSupport.framework

If you are planning to incorporate ads in a future version, please remove the Advertising Identifier from your app until you have included ad functionality.

To help locate the Advertising Identifier, use the “nm” tool. For information on the “nm” tool, open a terminal window and enter, “man nm.”

If you do not have access to the libraries source, you may be able to search the compiled binary using the "strings" or "otool" command line tools. The "strings" tool lists the methods that the library calls, and "otool -ov" will list the Objective-C class structures and their defined methods. These techniques can help you narrow down where the problematic code resides.

The third party libraries I'm using is the latest version of parse.com sdk, latest version of flurry analytics, and version 2.2 of test flight. Does anybody know which library is the issue? Thanks


Source: (StackOverflow)

How do you integrate the Parse Javascript API with Appcelerator and not use undocumented calls?

I would like to create a user from his/her Facebook credentials without using undocumented calls. I do not believe it is possible based on the current implementation of Parse Javascript Library for two known reasons:

1. The current implementation of the library does not support the Appcelerator HTTP client so it fails immediately. I have addressed this issue by extending the existing Parse Javascript library's ajax method to utilize the Appcelerator HTTP client.

http://www.clearlyinnovative.com/blog/post/34758524107/parse-appcelerator-titanium-the-easy-way

There has been approximately 2K views on the slide deck I created and about the same on the blog post, so it is pretty clear to me people want this to work.

2. The current implementation of the library assumes you are integrating with the Facebook Javascript library and that library does not work with Appcelerator either. In fact Appcelerator has integrated Facebook directly into the framework so there is no need for the javascript library. All of the information required to link a user account to Facebook can be easily gotten using the API calls that Appcelerator developers are already familiar with.

The original question was removed from the Parse Support forum so I am looking for a solution from a wider community.

Hi Aaron,

It's not helpful to other developers to promote using undocumented APIs in the Parse library as a workaround, so I make the decision to unlist it. I understand it might help in your particular case with Titanium, and you're well aware of the implications of using private APIs, but other users might overlook that warning. I hope you understand.

Héctor Ramos Solutions Architect, Parse https://parse.com/help

This is the code that was too dangerous to be left visible on the forum:

// setting auth data retrieved from Ti.Facebook login
authData = {
    "facebook" : {
        "id" : Ti.Facebook.uid,
         "access_token" : Ti.Facebook.accessToken,
         "expiration_date" : expDate, // "format: yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
    }
};

// Either way I resolved the problem, calling _handleSaveResult(true) on the returned user object, 
// I just dont think it should have been as difficult as it was
// attempt to log the user in using the FB information
var user = new Parse.User();
user.save({
    "authData" : authData
}).then(function(_user) {
    // force the user to become current
    _user._handleSaveResult(true); //<-- this is the evil method I called
    if (!_user.existed()) {

        // add additional user information
        var userInfo = {
            "acct_email" : "bryce@xxxxxx.com",
            "acct_fname" : "Bryce",
            "acct_lname" : "Saunders"
        };
        return _user.save(userInfo);
    }
}).then(function(_user) {

    alert('Hooray! Let them use the app now.');

}, function(error) {
    alert(' ERROR: ' + JSON.stringify(error, null, 2));
});

Question on Appcelerator Forum

http://developer.appcelerator.com/question/152146/facebook-appcelerator-and-parse-integration-need-help

Question on Parse Forum

https://parse.com/questions/how-do-you-integrate-the-parse-javascript-api-with-appcelerator-and-not-use-undocumented-calls


Source: (StackOverflow)

Exception when opening Parse push notification [closed]

I setup Parse push Android SDK 1.7.0 and can receive pushes without any problem. However, when opening the push notification my app crashes with the following exception:

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat= flg=0x1000c000 (has extras) }

I also tried subclassing ParsePushBroadcastReceiver with getActivity() always returning the main activity class, same result. Below is the full stacktrace:

E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.ers.test, PID: 13513
java.lang.RuntimeException: Unable to start receiver com.ers.test.MyPushBroadcastReceiver: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat= flg=0x1000c000 (has extras) }
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:2452)
        at android.app.ActivityThread.access$1700(ActivityThread.java:144)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1281)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5146)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
        at dalvik.system.NativeStart.main(Native Method)
 Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat= flg=0x1000c000 (has extras) }
        at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1632)
        at android.app.Instrumentation.execStartActivitiesAsUser(Instrumentation.java:1481)
        at android.app.ContextImpl.startActivitiesAsUser(ContextImpl.java:1136)
        at android.content.ContextWrapper.startActivitiesAsUser(ContextWrapper.java:344)
        at android.content.ContextWrapper.startActivitiesAsUser(ContextWrapper.java:344)
        at android.app.TaskStackBuilder.startActivities(TaskStackBuilder.java:221)
        at android.app.TaskStackBuilder.startActivities(TaskStackBuilder.java:232)
        at android.app.TaskStackBuilder.startActivities(TaskStackBuilder.java:208)
        at com.parse.TaskStackBuilderHelper.startActivities(TaskStackBuilderHelper.java:19)
        at com.parse.ParsePushBroadcastReceiver.onPushOpen(ParsePushBroadcastReceiver.java:202)
        at com.parse.ParsePushBroadcastReceiver.onReceive(ParsePushBroadcastReceiver.java:108)
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:2445)
        at android.app.ActivityThread.access$1700(ActivityThread.java:144)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1281)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5146)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:796)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:612)
        at dalvik.system.NativeStart.main(Native Method)

Source: (StackOverflow)

Parse warning from didReceiveRemoteNotification:fetchCompletionHandler

I am getting an error after adding this code from parse.com:

- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo
fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
    if (application.applicationState == UIApplicationStateInactive) {
        [PFAnalytics trackAppOpenedWithRemoteNotificationPayload:userInfo];
    }
}

I don't really understand what is going on, but I am getting this warning in the log:

You've implemented -[ application:didReceiveRemoteNotification:fetchCompletionHandler:], but you still need to add "remote-notification" to the list of your supported UIBackgroundModes in your Info.plist.

I think adding in your plist file UIBackgroundModes - remote-notification would fix the problem,

But when I do that, it changes the words to the follow:

Required Background Modes -> App downloads content in response to push notifications

Which my app doesn't do, so I am confused as to why I am doing this in the first place.


Source: (StackOverflow)

Parse Twitter SDK

I don't want to integrate twitter or Facebook with my Parse app, and i've specified that in the coding of what I want on my login screen. I have 6 errors coming up: (I'm using Xcode 5 and latest version of Parse SDK)

Undefined symbols for architecture x86_64:
  "_ACAccountTypeIdentifierTwitter", referenced from:
      -[PF_Twitter getLocalTwitterAccountAsync] in Parse(PF_Twitter.o)
  "_OBJC_CLASS_$_ACAccountStore", referenced from:
      objc-class-ref in Parse(PF_Twitter.o)
  "_OBJC_CLASS_$_SLComposeViewController", referenced from:
      objc-class-ref in Parse(PF_Twitter.o)
  "_OBJC_CLASS_$_SLRequest", referenced from:
      objc-class-ref in Parse(PF_Twitter.o)
  "_SLServiceTypeTwitter", referenced from:
      -[PF_Twitter getAccessTokenForReverseAuthAsync:localTwitterAccount:] in Parse(PF_Twitter.o)
      -[PF_Twitter getLocalTwitterAccountAsync] in Parse(PF_Twitter.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Source: (StackOverflow)

Method load() defines Objective-C class method 'load', which is not permitted by Swift 1.2

I'm using Parse and I'm creating a PFObject subclass conforming to the protocol PFSubclassing! It was working all fine, but now I'm using Swift 1.2 and it gives me this error:

1. override class func load() {
2.      self.registerSubclass()
3. }

On line 1: Method 'load()' defines Objective-C class method 'load', which is not permitted by Swift 1.2

Anyone have this problem yet? How can I fix?


Source: (StackOverflow)

Parse with Facebook login - Possibly since APK v42 or Graph API v2.4

Note: I have since edited this question's summary as I believe the focus must shift from Android APIs to Facebook itself.

Ever since my devices updated to Facebook v42, or since Facebook updated it's Graph API to v2.4 (7th August), my app has failed to login. My Samsung S6 (API 22) failed initially, and 3 days later when my HTC (API 21) updated the Facebook app it too failed to login when it had been successful until then.

Initial Steps Taken:

  • I have attempted to remove the app from the test user's facebook permissions and re-add it - in this case, it asks to allow permissions then fails.
  • I have tested multiple test users and all fail.
  • I've disabled the pre-installed Facebook app - this allows for a webview to be the method of login, but it still fails. Taken from top answer at Facebook login fails on some devices.

UPDATE 1:

ParseException taken from comments: "User logged in as different Facebook user."

If I log in with my Facebook credentials, the app does not give an error. As I am not a registered test user, it should create a user in the Parse database and continue to the MainActivity. Instead, the LoginActivity remains and my data is not added to the database.

UPDATE 2:

My HTC running 5.0 just updated the Facebook app today and now the same error Toast is appearing ("Facebook login failed"). I disabled and uninstalled the app but the Toast still appears.

UPDATE 3:

I have updated the Parse SDK, and changed my dependencies to reflect the latest Facebook SDK (4.5.0). Same error still occurring.

UPDATE 4:

The app logs in successfully on any emulator that does not have a native Facebook app.


ParseLoginFragment - where toast is implemented

private LogInCallback facebookLoginCallbackV4 = new LogInCallback() {
        @Override
        public void done(ParseUser user, ParseException e) {
            if (isActivityDestroyed()) {
                return;
            }

            if (user == null) {
                loadingFinish();
                if (e != null) {
                    showToast(R.string.com_parse_ui_facebook_login_failed_toast);
                    debugLog(getString(R.string.com_parse_ui_login_warning_facebook_login_failed) +
                            e.toString());
                }
            } else if (user.isNew()) {
              // rest of code

LogCat with Native Facebook App Disabled:

    08-14 22:50:28.151  30719-30719/com.guile.occ I/InjectionManager﹕ Inside getClassLibPath + mLibMap{0=, 1=}
08-14 22:50:28.151  30719-30719/com.guile.occ I/InjectionManager﹕ Inside getClassLibPath caller
08-14 22:50:28.191  30719-30739/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false
08-14 22:50:28.191  30719-30739/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isShipBuild true
08-14 22:50:28.191  30719-30739/com.guile.occ I/System.out﹕ (HTTPLog)-Thread-32296-266222247: SmartBonding Enabling is false, SHIP_BUILD is true, log to file is false, DBG is false
08-14 22:50:28.191  30719-30739/com.guile.occ I/System.out﹕ (HTTPLog)-Thread-32296-266222247: SMARTBONDING_FEATURE_ENABLED is true
08-14 22:50:28.191  30719-30739/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false
08-14 22:50:28.211  30719-30719/com.guile.occ D/InjectionManager﹕ InjectionManager
08-14 22:50:28.211  30719-30719/com.guile.occ D/InjectionManager﹕ fillFeatureStoreMap com.guile.occ
08-14 22:50:28.211  30719-30719/com.guile.occ I/InjectionManager﹕ Constructor com.guile.occ, Feature store :{}
08-14 22:50:28.211  30719-30719/com.guile.occ I/InjectionManager﹕ featureStore :{}
08-14 22:50:28.211  30719-30719/com.guile.occ D/SecWifiDisplayUtil﹕ Metadata value : SecSettings2
08-14 22:50:28.211  30719-30719/com.guile.occ I/Timeline﹕ Timeline: Activity_launch_request id:com.guile.occ time:88929116
08-14 22:50:28.221  30719-30719/com.guile.occ D/Activity﹕ performCreate Call Injection manager
08-14 22:50:28.221  30719-30719/com.guile.occ I/InjectionManager﹕ dispatchOnViewCreated > Target : com.guile.occ.LoginActivity isFragment :false
08-14 22:50:28.231  30719-30719/com.guile.occ D/Activity﹕ performCreate Call Injection manager
08-14 22:50:28.241  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor mIsFloating : false
08-14 22:50:28.241  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor flags : -2139029248
08-14 22:50:28.271  30719-30719/com.guile.occ I/InjectionManager﹕ dispatchOnViewCreated > Target : com.parse.ui.ParseLoginActivity isFragment :false
08-14 22:50:28.271  30719-30719/com.guile.occ D/SecWifiDisplayUtil﹕ Metadata value : SecSettings2
08-14 22:50:28.281  30719-30754/com.guile.occ D/OpenGLRenderer﹕ Use EGL_SWAP_BEHAVIOR_PRESERVED: true
08-14 22:50:28.281  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
08-14 22:50:28.281  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
08-14 22:50:28.291  30719-30719/com.guile.occ D/SRIB_DCS﹕ log_dcs ThreadedRenderer::initialize entered!
08-14 22:50:28.311  30719-30754/com.guile.occ D/libEGL﹕ loaded /vendor/lib64/egl/libGLES_mali.so
08-14 22:50:28.331  30719-30754/com.guile.occ I/OpenGLRenderer﹕ Initialized EGL, version 1.4
08-14 22:50:28.331  30719-30754/com.guile.occ I/OpenGLRenderer﹕ HWUI protection enabled for context ,  &this =0x7f7d8d6b20 ,&mEglDisplay = 1 , &mEglConfig = 2107568816
08-14 22:50:28.331  30719-30754/com.guile.occ D/OpenGLRenderer﹕ Get maximum texture size. GL_MAX_TEXTURE_SIZE is 8192
08-14 22:50:28.331  30719-30754/com.guile.occ D/OpenGLRenderer﹕ Enabling debug mode 0
08-14 22:50:28.331  30719-30754/com.guile.occ D/mali_winsys﹕ new_window_surface returns 0x3000,  [1440x2560]-format:1
08-14 22:50:28.451  30719-30719/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@38cba1f0 time:88929356
08-14 22:50:28.451  30719-30719/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@2e8ef184 time:88929358
08-14 22:50:29.061  30719-30739/com.guile.occ I/System.out﹕ KnoxVpnUidStorageknoxVpnSupported API value returned is false
08-14 22:50:37.661  30719-30719/com.guile.occ D/ViewRootImpl﹕ ViewPostImeInputStage ACTION_DOWN
08-14 22:50:37.731  30719-30855/com.guile.occ E/ActivityThread﹕ Failed to find provider info for com.facebook.katana.provider.AttributionIdProvider
08-14 22:50:37.731  30719-30719/com.guile.occ I/Timeline﹕ Timeline: Activity_launch_request id:com.guile.occ time:88938639
08-14 22:50:37.771  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor mIsFloating : false
08-14 22:50:37.771  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor flags : 8454400
08-14 22:50:37.771  30719-30719/com.guile.occ D/Activity﹕ performCreate Call Injection manager
08-14 22:50:37.771  30719-30719/com.guile.occ I/InjectionManager﹕ dispatchOnViewCreated > Target : com.facebook.FacebookActivity isFragment :false
08-14 22:50:37.771  30719-30719/com.guile.occ E/ActivityThread﹕ Failed to find provider info for com.facebook.katana.provider.PlatformProvider
08-14 22:50:37.771  30719-30719/com.guile.occ E/ActivityThread﹕ Failed to find provider info for com.facebook.wakizashi.provider.PlatformProvider
08-14 22:50:37.801  30719-30719/com.guile.occ I/WebViewFactory﹕ Loading com.google.android.webview version 44.0.2403.90 (code 240309050)
08-14 22:50:37.801  30719-30719/com.guile.occ I/InjectionManager﹕ Inside getClassLibPath caller
08-14 22:50:37.801  30719-30719/com.guile.occ I/LibraryLoader﹕ Time to load native libraries: 0 ms (timestamps 8709-8709)
08-14 22:50:37.801  30719-30719/com.guile.occ I/LibraryLoader﹕ Expected native library version number "",actual native library version number ""
08-14 22:50:37.811  30719-30719/com.guile.occ V/WebViewChromiumFactoryProvider﹕ Binding Chromium to main looper Looper (main, tid 1) {23858b22}
08-14 22:50:37.811  30719-30719/com.guile.occ I/LibraryLoader﹕ Expected native library version number "",actual native library version number ""
08-14 22:50:37.811  30719-30719/com.guile.occ I/chromium﹕ [INFO:library_loader_hooks.cc(120)] Chromium logging enabled: level = 0, default verbosity = 0
08-14 22:50:37.821  30719-30719/com.guile.occ I/BrowserStartupController﹕ Initializing chromium process, singleProcess=true
08-14 22:50:37.821  30719-30719/com.guile.occ W/art﹕ Attempt to remove local handle scope entry from IRT, ignoring
08-14 22:50:37.821  30719-30719/com.guile.occ E/SysUtils﹕ ApplicationContext is null in ApplicationStatus
08-14 22:50:37.831  30719-30719/com.guile.occ W/chromium﹕ [WARNING:resource_bundle.cc(285)] locale_file_path.empty()
08-14 22:50:37.831  30719-30719/com.guile.occ E/libEGL﹕ validate_display:255 error 3008 (EGL_BAD_DISPLAY)
08-14 22:50:37.831  30719-30719/com.guile.occ E/libEGL﹕ validate_display:255 error 3008 (EGL_BAD_DISPLAY)
08-14 22:50:37.841  30719-30871/com.guile.occ W/AudioManagerAndroid﹕ Requires BLUETOOTH permission
08-14 22:50:37.861  30719-30719/com.guile.occ W/art﹕ Attempt to remove local handle scope entry from IRT, ignoring
08-14 22:50:37.871  30719-30719/com.guile.occ W/AwContents﹕ onDetachedFromWindow called when already detached. Ignoring
08-14 22:50:37.881  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor mIsFloating : false
08-14 22:50:37.881  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor flags : 8454400
08-14 22:50:37.881  30719-30719/com.guile.occ D/SecWifiDisplayUtil﹕ Metadata value : SecSettings2
08-14 22:50:37.891  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
08-14 22:50:37.891  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
08-14 22:50:37.891  30719-30719/com.guile.occ D/SecWifiDisplayUtil﹕ Metadata value : SecSettings2
08-14 22:50:37.911  30719-30719/com.guile.occ D/SRIB_DCS﹕ log_dcs ThreadedRenderer::initialize entered!
08-14 22:50:37.911  30719-30754/com.guile.occ D/mali_winsys﹕ new_window_surface returns 0x3000,  [1440x2560]-format:1
08-14 22:50:37.921  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
08-14 22:50:37.921  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
08-14 22:50:37.921  30719-30719/com.guile.occ D/SRIB_DCS﹕ log_dcs ThreadedRenderer::initialize entered!
08-14 22:50:37.921  30719-30754/com.guile.occ D/mali_winsys﹕ new_window_surface returns 0x3000,  [1440x2560]-format:1
08-14 22:50:37.931  30719-30869/com.guile.occ W/chromium﹕ [WARNING:data_reduction_proxy_config.cc(423)] SPDY proxy OFF at startup
08-14 22:50:38.001  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor mIsFloating : true
08-14 22:50:38.001  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor flags : 8388610
08-14 22:50:38.041  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
08-14 22:50:38.041  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
08-14 22:50:38.041  30719-30719/com.guile.occ D/SRIB_DCS﹕ log_dcs ThreadedRenderer::initialize entered!
08-14 22:50:38.041  30719-30754/com.guile.occ D/mali_winsys﹕ new_window_surface returns 0x3000,  [667x461]-format:1
08-14 22:50:38.061  30719-30719/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@188ff958 time:88938965
08-14 22:50:38.061  30719-30719/com.guile.occ V/ActivityThread﹕ updateVisibility : ActivityRecord{30111b2c token=android.os.BinderProxy@38cba1f0 {com.guile.occ/com.parse.ui.ParseLoginActivity}} show : true
08-14 22:50:40.631  30719-30719/com.guile.occ W/BindingManager﹕ Cannot call determinedVisibility() - never saw a connection for the pid: 30719
08-14 22:50:41.221  30719-30719/com.guile.occ E/ViewRootImpl﹕ sendUserActionEvent() mView == null
08-14 22:50:44.081  30719-30719/com.guile.occ D/ViewRootImpl﹕ ViewPostImeInputStage ACTION_DOWN
08-14 22:50:44.211  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
08-14 22:50:44.211  30719-30719/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
08-14 22:50:44.231  30719-30719/com.guile.occ D/SRIB_DCS﹕ log_dcs ThreadedRenderer::initialize entered!
08-14 22:50:44.241  30719-30754/com.guile.occ D/mali_winsys﹕ new_window_surface returns 0x3000,  [667x461]-format:1
08-14 22:50:45.901  30719-30719/com.guile.occ W/BindingManager﹕ Cannot call determinedVisibility() - never saw a connection for the pid: 30719
08-14 22:50:45.981  30719-30719/com.guile.occ E/ViewRootImpl﹕ sendUserActionEvent() mView == null
08-14 22:50:45.981  30719-30719/com.guile.occ E/ViewRootImpl﹕ sendUserActionEvent() mView == null
08-14 22:50:46.001  30719-30719/com.guile.occ E/ViewRootImpl﹕ sendUserActionEvent() mView == null
08-14 22:50:46.011  30719-30756/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false
08-14 22:50:46.011  30719-30719/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@38cba1f0 time:88946918
08-14 22:50:52.751  30719-30853/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false

LogCat with Native Facebook App Enabled:

08-14 22:59:45.761  13249-13249/com.guile.occ E/Zygote﹕ MountEmulatedStorage()
08-14 22:59:45.761  13249-13249/com.guile.occ E/Zygote﹕ v2
08-14 22:59:45.761  13249-13249/com.guile.occ I/libpersona﹕ KNOX_SDCARD checking this for 10033
08-14 22:59:45.761  13249-13249/com.guile.occ I/libpersona﹕ KNOX_SDCARD not a persona
08-14 22:59:45.761  13249-13249/com.guile.occ I/SELinux﹕ Function: selinux_compare_spd_ram , priority [2] , priority version is VE=SEPF_SM-G925F_5.1.1_0030
08-14 22:59:45.761  13249-13249/com.guile.occ E/SELinux﹕ [DEBUG] get_category: variable seinfo: default sensitivity: NULL, cateogry: NULL
08-14 22:59:45.761  13249-13249/com.guile.occ I/art﹕ Late-enabling -Xcheck:jni
08-14 22:59:45.771  13249-13249/com.guile.occ D/TimaKeyStoreProvider﹕ TimaSignature is unavailable
08-14 22:59:45.781  13249-13249/com.guile.occ D/ActivityThread﹕ Added TimaKeyStore provider
08-14 22:59:45.801  13249-13249/com.guile.occ I/InjectionManager﹕ Inside getClassLibPath + mLibMap{0=, 1=}
08-14 22:59:45.811  13249-13249/com.guile.occ I/InjectionManager﹕ Inside getClassLibPath caller
08-14 22:59:45.871  13249-13285/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false
08-14 22:59:45.871  13249-13285/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isShipBuild true
08-14 22:59:45.871  13249-13285/com.guile.occ I/System.out﹕ (HTTPLog)-Thread-33185-403364762: SmartBonding Enabling is false, SHIP_BUILD is true, log to file is false, DBG is false
08-14 22:59:45.871  13249-13285/com.guile.occ I/System.out﹕ (HTTPLog)-Thread-33185-403364762: SMARTBONDING_FEATURE_ENABLED is true
08-14 22:59:45.871  13249-13285/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false
08-14 22:59:45.881  13249-13285/com.guile.occ I/System.out﹕ KnoxVpnUidStorageknoxVpnSupported API value returned is false
08-14 22:59:45.891  13249-13249/com.guile.occ D/InjectionManager﹕ InjectionManager
08-14 22:59:45.891  13249-13249/com.guile.occ D/InjectionManager﹕ fillFeatureStoreMap com.guile.occ
08-14 22:59:45.901  13249-13249/com.guile.occ I/InjectionManager﹕ Constructor com.guile.occ, Feature store :{}
08-14 22:59:45.901  13249-13249/com.guile.occ I/InjectionManager﹕ featureStore :{}
08-14 22:59:45.911  13249-13249/com.guile.occ D/SecWifiDisplayUtil﹕ Metadata value : SecSettings2
08-14 22:59:45.911  13249-13249/com.guile.occ I/Timeline﹕ Timeline: Activity_launch_request id:com.guile.occ time:89486819
08-14 22:59:45.921  13249-13249/com.guile.occ D/Activity﹕ performCreate Call Injection manager
08-14 22:59:45.921  13249-13249/com.guile.occ I/InjectionManager﹕ dispatchOnViewCreated > Target : com.guile.occ.LoginActivity isFragment :false
08-14 22:59:45.941  13249-13249/com.guile.occ D/Activity﹕ performCreate Call Injection manager
08-14 22:59:45.961  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor mIsFloating : false
08-14 22:59:45.961  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor flags : -2139029248
08-14 22:59:45.991  13249-13249/com.guile.occ I/InjectionManager﹕ dispatchOnViewCreated > Target : com.parse.ui.ParseLoginActivity isFragment :false
08-14 22:59:46.001  13249-13249/com.guile.occ D/SecWifiDisplayUtil﹕ Metadata value : SecSettings2
08-14 22:59:46.001  13249-13319/com.guile.occ D/OpenGLRenderer﹕ Use EGL_SWAP_BEHAVIOR_PRESERVED: true
08-14 22:59:46.011  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
08-14 22:59:46.011  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
08-14 22:59:46.031  13249-13249/com.guile.occ D/SRIB_DCS﹕ log_dcs ThreadedRenderer::initialize entered!
08-14 22:59:46.061  13249-13319/com.guile.occ D/libEGL﹕ loaded /vendor/lib64/egl/libGLES_mali.so
08-14 22:59:46.071  13249-13319/com.guile.occ I/OpenGLRenderer﹕ Initialized EGL, version 1.4
08-14 22:59:46.081  13249-13319/com.guile.occ I/OpenGLRenderer﹕ HWUI protection enabled for context ,  &this =0x7f7d8d6d60 ,&mEglDisplay = 1 , &mEglConfig = 2107732656
08-14 22:59:46.081  13249-13319/com.guile.occ D/OpenGLRenderer﹕ Get maximum texture size. GL_MAX_TEXTURE_SIZE is 8192
08-14 22:59:46.081  13249-13319/com.guile.occ D/OpenGLRenderer﹕ Enabling debug mode 0
08-14 22:59:46.081  13249-13319/com.guile.occ D/mali_winsys﹕ new_window_surface returns 0x3000,  [1440x2560]-format:1
08-14 22:59:46.191  13249-13249/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@ce0ed1c time:89487096
08-14 22:59:46.191  13249-13249/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@38cba1f0 time:89487096
08-14 22:59:58.291  13249-13249/com.guile.occ D/ViewRootImpl﹕ ViewPostImeInputStage ACTION_DOWN
08-14 22:59:58.401  13249-13249/com.guile.occ I/Timeline﹕ Timeline: Activity_launch_request id:com.guile.occ time:89499300
08-14 22:59:58.461  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor mIsFloating : false
08-14 22:59:58.461  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* installDecor flags : 8454400
08-14 22:59:58.461  13249-13249/com.guile.occ D/Activity﹕ performCreate Call Injection manager
08-14 22:59:58.471  13249-13249/com.guile.occ I/InjectionManager﹕ dispatchOnViewCreated > Target : com.facebook.FacebookActivity isFragment :false
08-14 22:59:58.481  13249-13249/com.guile.occ D/SecWifiDisplayUtil﹕ Metadata value : SecSettings2
08-14 22:59:58.491  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled mFloatingMenuBtn : null
08-14 22:59:58.491  13249-13249/com.guile.occ D/PhoneWindow﹕ *FMB* isFloatingMenuEnabled return false
08-14 22:59:58.501  13249-13249/com.guile.occ D/SRIB_DCS﹕ log_dcs ThreadedRenderer::initialize entered!
08-14 22:59:58.501  13249-13319/com.guile.occ D/mali_winsys﹕ new_window_surface returns 0x3000,  [1440x2560]-format:1
08-14 22:59:58.541  13249-13249/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@5562ab1 time:89499446
08-14 22:59:58.541  13249-13249/com.guile.occ V/ActivityThread﹕ updateVisibility : ActivityRecord{2d7dbc2b token=android.os.BinderProxy@ce0ed1c {com.guile.occ/com.parse.ui.ParseLoginActivity}} show : true
08-14 22:59:58.691  13249-13457/com.guile.occ I/System.out﹕ (HTTPLog)-Static: isSBSettingEnabled false
08-14 22:59:58.911  13249-13249/com.guile.occ I/Timeline﹕ Timeline: Activity_idle id: android.os.BinderProxy@ce0ed1c time:89499810

Source: (StackOverflow)

Xamarin forms android Application not getting DeviceToken Parse SDK

I'm developing xamarin forms application for both android and iOS. I'm implementing the PushNotifications for the same using Parse SDK. I've added Parse.Android dll in references of .Droid project and Parse.iOS dll in references of .iOS project. My problem is sometimes on Android I'm not able to retrieve the DeviceToken. There're no entries for DeviceToken and pushtype in the parse installation class. It's values are 'undefined'. Below is my code along with manifest.

public  async void RegisterForPushNotifications ()
    {
        try {
            if (Utility.isNetworkConnected ()) {
                await ParsePush.SubscribeAsync ("");
                var installation = ParseInstallation.CurrentInstallation;
                // I'm saving the DeviceToken in App.regId for future uses
                App.regId = System.String.IsNullOrWhiteSpace (installation.DeviceToken) ? "" : installation.DeviceToken;
                ParsePush.ParsePushNotificationReceived += PushNotificationReceived;
            }
        } catch (ParseException e) {
            System.Diagnostics.Debug.WriteLine (e.StackTrace);
        } catch (Java.Lang.Exception e) {
            e.PrintStackTrace ();
        }
    }

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.nirvaniclabs">
<uses-sdk android:minSdkVersion="15" android:targetSdkVersion="23" />
<application android:label="RxLifetime" android:icon="@drawable/icon" android:largeHeap="true">
    <receiver android:name="parse.ParsePushBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND">
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
            <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
            <category android:name="com.nirvaniclabs" />
        </intent-filter>
    </receiver>
    <service android:name="parse.ParsePushService" />
</application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.LOCATION_HARDWARE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:protectionLevel="signature" android:name="com.nirvaniclabs.permission.C2D_MESSAGE" />
<uses-permission android:name="com.nirvaniclabs.permission.C2D_MESSAGE" />
</manifest>

Also some times above mentioned code is causing crashes at app startup. I've reported this issue here and here

Also ParseClient.Initialize is the very first line of 'OnCreate' method of MainActivity where I'm passing parse keys required for initialization.

I'm calling RegisterForPushNotifications method after LoadApplication (new App ()) is called.

Attached below is the screenshot of parse installation class.

parse installation

Please let me know if there's some issue in my code or is it the issue with parse SDK.


Source: (StackOverflow)

iOS 8 enabled device not receiving PUSH notifications after code update

I recently upgraded one of my test iphones to iOS 8 and then upgraded the PUSH registration code as below (using xCode 6)

-(BOOL)hasNotificationsEnabled {


NSString *iOSversion = [[UIDevice currentDevice] systemVersion];
NSString *prefix = [[iOSversion componentsSeparatedByString:@"."] firstObject];
float versionVal = [prefix floatValue];


if (versionVal >= 8)
{

    NSLog(@"%@", [[UIApplication sharedApplication]  currentUserNotificationSettings]);
    //The output of this log shows that the app is registered for PUSH so should receive them

    if ([[UIApplication sharedApplication] currentUserNotificationSettings].types != UIUserNotificationTypeNone) {

        return YES;

    }

}
else
{
    UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
    if (types != UIRemoteNotificationTypeNone){
        return YES;
    }

}


return NO;
}




-(void)registerForPUSHNotifications {

NSString *iOSversion = [[UIDevice currentDevice] systemVersion];
NSString *prefix = [[iOSversion componentsSeparatedByString:@"."] firstObject];
float versionVal = [prefix floatValue];


if (versionVal >= 8)
{


        //for iOS8
    UIUserNotificationSettings *settings =
    [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert |
     UIUserNotificationTypeBadge |
     UIUserNotificationTypeSound categories:nil];
    [[UIApplication sharedApplication] registerUserNotificationSettings:settings];
    [[UIApplication sharedApplication] registerForRemoteNotifications];


}
else
{

        [[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];


}

}

Despite this upgrade and the fact that [[UIApplication sharedApplication] currentUserNotificationSettings] shows PUSH is enabled for the device, I am not receiving PUSH notifications.

I am using Parse and doing everything by the book as far as they are concerned ( https://parse.com/tutorials/ios-push-notifications) .

Is anyone experiencing the same issue? Is there something else that I may be missing ?


Source: (StackOverflow)

swift 2 parse facebookSDK ios9

I am trying to Log In a user via Facebook. In the previous version of swift 1.2 everything worked perfectly, but after migration I can't seem to log in via my FB account I am still getting the error saying:

-canOpenURL: failed for URL: "fbauth://authorize/?client_id=... error: "This app is not allowed to query for scheme fbauth"

Can you please help me with that?


Source: (StackOverflow)