I integrated with Facebook SDK and I am tracking FBAppEvents with it. So far the event reporting is working perfectly fine and the events all showed up in App Insights. However, I am having trouble setting the app version number.
According to Apple's document, all I need to do is to call [FBSettings setAppVersion:xxx]. However, this method is
deprecated and Facebook is suggesting using CFBundleVersion instead.
So instead of calling [FBSettings setAppVersion:], I set this CFBundleVersion in my app's [Appname]-Info.plist file but I still don't see the app version number show up(I put a value of 56 there).
Does anyone have any idea how to fix this?
I set the Bundle version under the Info tab of the my target:
Related
After I publish my Flutter app on Apple App Store Admob gave this warning.
Some apps haven't been configured to use Apple's SKAdNetwork
To ensure you're getting credit for all ads activity, like app
installs, be sure to configure SKAdNetwork with Google's network IDs.
When I click "Get instructions" button. It opens this page:
https://developers.google.com/admob/ios/ios14?hl=en-GB
But as you know, this page is not for Flutter. This page is for Native iOS apps developing by Swift or Objective-C.
How can I configure Apple's SKAdNetwork in Flutter? Where to edit - change?
Interestingly, there is no source for this problem in the Internet.
I feel like the first person in the world to develop Flutter.
Really, there is no solution - no source in Flutter for this problem!
Note: There is no information about this problem in this source too:
https://developers.google.com/admob/flutter/quick-start#ios
EDIT: Must I implement ATT to configure SKAdNetwork? What happens if I only change Info.plist?
https://developers.google.com/admob/ios/ios14?hl=en-GB#request
Even with flutter applications, you have different configuration files for iOS and Android.
Look for the Info.plist file within your project (you must have one, usually under ios/Runner and update the keys as mentioned in the link you have attached
I solved my problem, this warning has been removed automatically. I was using out-dated admob SDK.
https://pub.dev/packages/google_mobile_ads/install
SOLUTION:
Update your admob SDK to latest version.
I edited my pubspec.yaml file.
dependencies:
google_mobile_ads: ^1.0.1
I updated my app on App Store so no warning is seen now in Admob Panel.
Everything I say pertains to ios 9 and above.
Firebase documentation says:
When a user opens one of your Dynamic Links, if your app isn't yet
installed, the user is sent to the Play Store or App Store to install
your app (unless you specify otherwise), and your app opens. You can
then retrieve the link that was passed to your app and handle the link
as appropriate for your app.
I succeeded to install my application by FB-link and to open my installed application by the link. But when I try install and open in single step the application is opened without link passed. That is if my application already installed and I click on the link then the application is opened with link passed. But if application is not installed and I click on FN-link then iOS open AppStore and install the application and then I click on 'open' button and the application is opened without links. I am sorry for my bad English but hope that you are understanding me.
UPDATE
I've seen same similar question and question.
Check points.
Application starts (openURL is executed) by custom schema url (in my case it is same as bundle id)
Application starts (continueUserActivity is executed) by dynamic link.
I tryed to use cellular instead of wi-fi without success.
If application not installed taping on dynamic link open AppStore with my app.
In didFinishLaunchingWithOptions I call [FIRApp configure].
Nothing helped.
I didn't say that I use Xamarin and Xamarin FireBase
May be it uses the old version of native FireBase library.
SOLVED!
Xamarin Firebase plugin has been updated and problem have been solved.
Let me suggest how to test the Firebase Dynamic Links on iOS in the case when the iOS App is not installed.
Remove the iOS App from iPhone (ensure to use actual device, not Simulator);
Generate Firebase Dynamic Link and paste the link to the iOS Notes App;
Tap on the link in Notes App;
Ensure that you see Interstitial page, where you tap on "Open" button. After this you should be navigated to Apple AppStore;
Put breakpoint or NSLog to [UIApplicationDelegate application:openURL:options:] and observe the url value;
Install and launch the App using Xcode;
Shortly after App is launched you should observe call to the [UIApplicationDelegate application:openURL:options:] with url. Here you will call:
FIRDynamicLink *dynamicLink = [[FIRDynamicLinks dynamicLinks]
dynamicLinkFromCustomSchemeURL:url];
If Firebase Dynamic Link is found you should see dynamicLink.url property being non-nil. If Firebase Dynamic Link not found, you will see dynamicLink.url property being nil.
When this scenario working well, you can re-check FDL behavior in Safari, Facebook, Email and other apps.
If App is already installed, then tapping on Firebase Dynamic Link should launch the App with the link. Watch out for [UIApplicationDelegate application:continueUserActivity:restorationHandler:], value userActivity.webpageURL.
I was able to solve this issue on my end without any code changes, and by simply running pod update and updating to the latest version of Firebase.
We have recently noticed that our app's Evernote integration has stopped working. I've pinpointed it to the new Evernote app update released on January 19th that brings the app to version 8.0.1. Specifically the "IsEvernoteInstalled()" function no longer works, and neither do any ENSession calls that open notes in the Evernote app itself (viewNoteInEvernote for example). I made sure I have the latest version of the Evernote Cloud SDK here:
https://github.com/evernote/evernote-cloud-sdk-ios
but I'm still not having any luck. One oddity I've noticed is that the only required LSApplicationQueriesSchemes item mentioned in the documentation is "en" yet the source code for the app is trying to open "evernote://" urls. Also the "IsEvernoteInstalled" function checks "en://". The current version of the Evernote iOS app appears to only have "evernote://" as a registered scheme so I'm confused. I tried adding "evernote" as another application query scheme, but that did not help. It appears that the Evernote Cloud SDK has not been updated to remain functional with the new version of the app, but maybe I'm missing something?
Thank you.
I think the change of URL scheme is unintentional and will be fixed on the Evernote side.
I am developing an ios app and trying to allow the user to connect to their LinkedIn account.
I am using the steps found in
https://developer.linkedin.com/docs/ios-sdk-auth
where I
Registered my app with LinkedIn to get the application id.
Updated my info.plist with the *li{application id}* entries for URL Schemes
Called LISDKSessionManager.createSessionWithAuth() to start the login process.
However, this only opens up the LinkedIn app on my iPad, but does not show me which permission I had requested nor redirect me back to my app. I am at a loss to if this is the intended behaviour or am I missing a step.
Note that the sampleapp provided by linkedin also does not show me the page with a list of permissions requested or redirect me back to my own app.
It appears that the LinkedIn app has an iPad-specific bug that prevents it from returning to other apps after createSessionWithAuth: is called, even when all credentials are correct.
(I had to wait for the delivery of a physical iPhone to test my hypothesis, as there is no way to log in like this on a simulator).
Update
My answer was with regard to the 1.0.2 sdk, which also had problems with all iOS 9 devices. The iOS 9 problems were fixed with the 1.0.4 sdk, but the iPad problems remain.
Found the solution. For me, it was about setting our bundles right:
On https://www.linkedin.com/developer/apps/xxxxxx/mobile, make sure that your 'iOS Bundle Identifiers' is the same on your app. Plus, click on Update! I just added and 'forgot' to save them.
Ok, so I've got a "completed" iOS phonegap/cordova project, using version 3.4 in xcode 5. I know I need to integrate the facebook sdk in order to track the installs for mobile ads.
Will simply integrating the sdk as per Facebook's instructions here https://developers.facebook.com/docs/ios/getting-started/ do the job, or do I need to use the entire facebook connect plugin as outlined here https://github.com/phonegap/phonegap-facebook-plugin being that I only need to track installs?
Also, when this is taken care of I need to add the following to the UIApplicationDelegate applicationDidBecomeActive selector
[FBSettings setDefaultAppID:YOUR_APP_ID];
[FBAppEvents activateApp];
Yet I can find no clear answer on exactly where I need to place this, (I have little to no knowledge of obj-c), where and in which file in my xcode project do I need to place this? I did find this out from a transcript of an open session on phonegap, it didn't help me much but may mean something to you:
Sometimes, some SDK or others ask us to add some lines in the objective-C, like Facebook for "Mobile App Install Ads" they ask to add "[FBSettings publishInstall:YOUR_APP_ID]" in UIApplicationDelegate applicationDidBecomeActive selector - but with phonegap project, we have not this method, so is there a equivalent in the code generated by phonegap?
A: If you are developing locally using Xcode, you can access this method in the application delegate class. This is not available inside of the PhoneGap Build service.
Thanks for your help.
Having looked at this issue again, the answer is pretty simple.
Follow the instructions for creating an app and installing the SDK:
It tells you exactly how to do this for iOS here https://developers.facebook.com/docs/ios/getting-started/
Make sure to follow the instructions to the letter and that you add the relevant rows/values to your project's .plist file.
The final piece of information you'll need is understanding the import of the Facebook SDK header file into the AppDelegate.m file in your Xcode project and the applicationDidBecomeActive selector.
In your project's ApplicationDelegate.m file copy #import <FacebookSDK/FacebookSDK.h> directly below your other import statements. Hint: they look similar and are near the top.
Now copy the following into your AppDelegate.m replacing the dummy app id #"123456789" with your facebook app id. Place this code directly above #end in your AppDelegate.m file.
-(void)applicationDidBecomeActive:(UIApplication *)application
{
[FBSettings setDefaultAppID: #"123456789"];
[FBAppEvents activateApp];
}
That's it. Now you can try an install of your app onto your development device and check it's reporting correctly by visiting your app dashboard on Facebook, scrolling down to the bottom, or finding the section about latest installs.
It's done automatically by the javascript sdk:
https://developers.facebook.com/docs/reference/javascript/FB.AppEvents.LogEvent#examples
I don't have a full answer, but I'm in a similar position. My understanding is yes you need to install the Facebook SDK, and yes you'll need to add the ObjectiveC config stuff to UIApplicationDelegate. However I believe you do not need the phonegap-facebook-plugin and I would suggest you stay clear of it, at least while it has 216 open issues and lags the iOS Facebook SDK by several versions. Of course, your mileage may vary, but I'm fairly certain it is not required for Mobile Ads tracking.