How to share from iphone app to any windows phone 7 app? - iphone

Let's say I have app on iPhone and Windows Phone 7. How to share (ex. Note) between my both apps, regardless any platform.
Update
Guess this question is very broad, my bad.
Be more specific, I want the user to go through his contact list and share through my app. How do I identify if the other user installed my app? and what platform he/she using?

Using the contact list isn't a good way to "share" in this regard.
You're asking two questions here:
How to build a system to share data between two mobile clients, irrespective of platform?
How to best enable users to find their friends to share data?
Let's start with the 2nd question.
I would leverage services like Twitter and Facebook and have your app connect with your users facebook account. This is a well known approach, and avoids having to roll your own account system.
With facebook as an example:
Facebook connect, you can get the facebookID of your user, as well as their friends facebookID. You'll need a backend webservice which you can query users by fbID.
When a user opts to use their facebook account, store their FacebookID on your backend service. Then using facebook's api's get a list of their friends facebookID's. Your app will lookup each ID using your backend service, and if it finds one, then you know that friend has also installed the app, and connected it to facebook.
So if Alice installed your app, connects to facebook, and she is friends with Bob, who also has installed your app, your back end service would return that Bob's facebookID is known to your app, and thus the two of them can share to each other using some protocol that you design.
If their friend's ID isn't known to your system, I would send them a facebook message, or post on thier wall with a restful link that invites them to check out the note you want to share on the web, and place the link to the app on the same page.
Due to the high level of your question, this answer is a bit of a 20,000ft view, and assumes you know how to build a web service.
If you want to see a great example of an app that makes use Facebook and or Twitter to find friends who also use the same app, I recommend checking out Groupme. It's free, and available for WP7, iPhone, and Android. It's a group SMS app, and uses your contact list, facebook, and twitter, to setup friends.
For the first question, you'll need to make use of a backend webservice. User would elect to share either in-app, or by posting to their facebook, with a weblink. In-app sharing, I would use an inbox approach. A user posts a message to their friend, and it gets stored in a queue. The app periodically checks the users queue to see if any new "shares" have been posted. If so, get that data, and present it to the user. Your back end service should also take advantage of newer app concepts like push notifications, because thats what users expect.

I would suggest using a web service such as Parse. This will allow you to focus on your app development and not worry about server coding.
Currently they do not have a Windows Phone 7 SDK but it is just a matter of making the REST requests manually to the service.

Related

Facebook connect service for my customers without appid

I have more than few clients that would like to add facebook connect to their landing pages (managed by me). They are too many and not enough tech-savvy to manually create ad appid for each of them.
So my only solution is to usa my own appid to add facebook connect to all my clients websites, but as far as I know, Facebook doesn't allow to simply use the same appid on any domain.
How can I solve this? I can't find any documentation to solve my issue. Does anyone have a direction for me?
This has been discussed a couple o’ times before already – but I mostly commented on earlier questions, so let me write the whole thing up as a proper answer, for future reference.
[paraphrased] Multiple-client Facebook login via one single app id
Does anyone have a direction for me?
You probably rather don’t want to do that.
It is not really possible to run one simple app one multiple different domains.
As a workaround for only a few domains, people used to specify different domains for the different platforms – Website, Page Tab or Canvas App, plus Mobile alternative for Canvas – without actually using any of those platforms besides Website, which made the app usable on multiple domains as a website app. But since Facebook introduced their login/permission review process¹, you can’t do that any more – they expect you to present actual functionality on all platforms you have configured in your app.
You can kind-off use one single app for login on multiple domains – if you are willing to use only the server-side login flow, and to redirect users to one “main” domain (that gets specified as the app domain in the app settings) to login, and then from there back to the origin domain.
But this has several drawbacks:
It’s not what you’d call a “white label” solution. If your clients expect it to look as if users where logging in via “their” app, it should stay on their domain. Individual branding, in regard to stuff such as app name, app logo that shows in the login dialog, etc., would also not be possible. Additionally, app attribution – the link that shows up under content shared/posted via the app – would only link users back to the main domain, and not to your customer’s.
You would not be able to use the JS SDK for client-side API requests, or even just to embed it to render any of the FB social plugins that require an app id – the SDK checks what domain it is “running on”, and can not be tricked to accept a domain that is not specified in the app settings.
There could be privacy issues. An over-exaggerated example: Just because I as the app user decided to share my photos or videos I have on Facebook with your customer Our-Holy-Mother-of-Christ-Bakery.com, does not necessarily mean I want to share them with your other customer, amateurs-doing-all-kinds-of-nasty-stuff.xxx as well – but if they shared an app id for login purposes, I automatically would. Have fun writin’ the Privacy Policy (which is mandatory if you use FB login functionality, and FB also automatically checks if your app has got one) for that scenario ;-)
Finally, and most importantly: All your customers would be “sitting in the same boat.” If one of them, or in turn their website users, would publish spam via your app id, so that Facebook blocks it, login would not work any more for all of your customer’s websites. And if you decide only then, that setting up an individual app for each of your customers would be the better way to go, they would not be able to recognize their existing users any more, because of user ids being app-scoped since API v2.0 was introduced – so if users logged into this new app, that app would see a totally different user id. (And to rely on an email address as an identifier is risky, too, because you will not get one from the API for every user; for example if they registered using their mobile device.)
Edit: Plus, app/domain insights, as luschn mentioned in his answer.
¹ Yes, the review process has made it more laborious to set up multiple apps for multiple clients. But for apps that do the same stuff/use the same permissions in the same manner, you can refer to an earlier successfully reviewed app id to speed up the process a little. Also, screenshots of how f.e. posts made via the app look on timeline, and what UI components are used, as well as screencasts that you include in your submission could probably be used with little to no alteration.
Apps are not meant be used on several different domains, you will have to create a new App for each domain, i´m afraid. You can use the different platforms in the App settings to use different domains, but there are only a few so it´s pointless. Just create some screenshots and a tutorial for your clients, that´s how it is usually done.
Btw, it would be weird to authorize an App on a website, and the same App would allow you to be authorized on all other client websites. Also, insights are per App, so your clients may want to see their own insights and not the global insights of all domains together.
Many is not defined but i think for being a smart developer you need to create new app_ids for every project you need to use facebook connect. Just my opinion. It also allows you to monitor alot of stuff.

facebook, twitter, youtube app creation and api integration help required... just a small answer required

I am working on PHP application which will be shipped to many users for their own.
App needs to integrate
Facebook api for auto post their web articles to their fb profile/page.
Twitter api for same purpose as above and to search for tweets/users.
Youtube api to upload videos to their user account.
I already have completed the software, Right now software has api settings menu for each of them. Where user create their own app on respective platform and setup app id/secrets etc... IT works fine...
But I am looking for a way where, we use our own app codes, and user only has to click on button which redirect them to their platform and they can allow access to our app. So they dont have to go through their own app creation.
Just like how login with social media things work...
I know thats possible and my question is not about how to do this...
My question is about IF I do that, will that create any App usage limitation issues for users ? For example, if I create my own Youtube app settings from http://console.developers.google.com/ and all users just authorise my app to their account, will it create any issues if all users (may be 2000 users) uploads upto 5 videos per day ? Will the usage limit counted per application or per user access assigned ?
I need the answer for facebook/twitter and youtube. I know some one how has already done this can answer this quickly and easily...
Thanks for reading my question...

I don't understand this email from Facebook about my app [duplicate]

This question already has an answer here:
Closed 10 years ago.
Possible Duplicate:
Dec 5th beaking changes - facebook says app will be effect
I got an email that my app is impacting some new rules. Unfortunately english isn't my native language and I found no possibility to ask the facebook support - I'm not sure if I understood the email correctly. I hope you can help me:
Your desktop web game hosted primarily off Facebook currently
accesses user connections when authenticating and/or requests
additional permissions beyond age, email, and publishing permissions.
This is no longer allowed per Facebook Platform Policy I.13a:
Desktop web games off of Facebook.com may only use Facebook Login
(Authentication, excluding user connections such as friend list),
Social Plugins and publishing (e.g., Feed Dialog, Stream Publish, or
Open Graph). When authenticating, these games may not request
additional permissions other than age, email, and our Publishing
Permissions.
If your app is accessing user connections
(https://developers.facebook.com/docs/reference/api/user/) or asking
for additional permissions beyond age, email, and our Publishing
Permissions, please remove these requests. After December 5th, we will
place restrictions on your app if your app continues to access user
connections or request additional permissions other than
'user_birthday', 'email' or our publishing permissions such as
'publish_actions' or 'publish_stream'.
Do I understand this right, I can ask for following additional permission like email or publishing stream but nothing else?
I changed my login-url from
"scope=email,publish_stream,read_stream,user_games_activity"
to this:
"scope=email,publish_stream"
Is it now okay?
I also use $facebook->api('/'.$FacebookID.'/friends'); to get the list of friends and build a form where the user can send his friends an invitation. Is this not alowed anymore?
• Your Canvas/mobile game currently shares the same app ID with a
desktop web game off Facebook.com, which is no longer allowed per
Facebook Platform Policy I.13b:
(Games on Facebook.com and mobile must not share the same app ID with
desktop web games off of Facebook.com. You must not use Canvas apps to
promote or link to game sites off of Facebook, and must not use emails
obtained from us to promote or link to desktop web games off of
Facebook.com).
Please create a separate app ID for your Facebook Connect integration.
After December 5th, your Connect app will no longer be accessible if
it continues to share an app ID with its Canvas/mobile counterpart.
You have received this message because your app uses a Connect
integration. If you believe this to be an error, please reference the
developer docs to ensure your app is categorized correctly.
This one I don't understand at all. What and where can I do that? My app has a own URL and a canvas page at facebook. Would it be enough to remove the canvas page and only keep the direct URL?
I changed my login-url from "scope=email,publish_stream,read_stream,user_games_activity" to this: "scope=email,publish_stream" Is it now okay?
Yes, it should be ok now because according to the breaking changes "these games may not request additional permissions other than age, email, and our Publishing Permissions." So you should be fine.
I also use $facebook->api('/'.$FacebookID.'/friends'); to get the list of friends and build a form where the user can send his friends an invitation. Is this not alowed anymore?
/friends doesn't require any additional permissions, so I think it should be ok.
What and where can I do that? My app has a own URL and a canvas page at facebook. Would it be enough to remove the canvas page and only keep the direct URL?
Yes, you need to separate your canvas/mobile game from the desktop web game. Currently, they both have the same app ID, you can choose to either remove the canvas page entirely or create a new app for the canvas/mobile game and use that new app ID. Regardless, the end result is that only one of your games can use your exisiting app ID.

Facebook: detecting user apps

Hello I've read the docs and am having trouble getting a definitive answer for the following questions:
Can our app detect if another app is used by a given user. What about if we are admin of, or have the id of both apps.
If one of the apps is removed from FB is there a way to tell if a user had it installed before it was removed? A sort of history of past apps, I guess.
Here:
FB Connect: is there a way to see the logged in user's facebook apps?
Best answer is "I think the most you can do..." but I'd like to know for sure.
Thanks for any help.
If you request the permission user_actions:APP_NAMESPACE you can see the open graph actions that the user has performed in that app.
http://developers.facebook.com/docs/authentication/permissions/#open_graph_perms
In my apps I generally store the user ID of all authorized users in a database, and when I get a call via the "Deauthorize Callback URL" I don't delete the user from the database, but instead only flag the user as deauthorized.
This way I can easily get an overview of users that are using (or have used) any of my apps. This allows me to present special features for users who are using several of my apps.
For example, let's say I made a photo app (like Instagram) and a GPS running app (like Endomondo). If the user takes a photo with Instagram while running with Endomondo, I could present the option to GPS-tag the photo, or add the photo to Endomondo.
This is something that I think we developers should use more. Perhaps present an open API to other apps, to let the apps work together.

Facebook-approved way to increase conversion from app requests?

I have a question about increasing visibility of Facebook app notifications.
As far as I can tell, there are only 2 places where Facebook app requests appear for users who don't click the "Apps & Games" section - in the top right section (https://skitch.com/nicksoman/8172w/facebook) or in the jewel (https://skitch.com/nicksoman/81737/2-facebook) - I believe the wording is a bit different on this one if recipients haven't used the app, as it references an invite rather than a request.
As other have noted, neither of these channels provides any context around the request. In the past I've seen context for apps like BranchOut and FarmVille, but I can't replicate this behavior by sending invites from these apps now (can anyone)?
Has anyone found a Facebook-approved way to either provide more context around these app requests or make them more visible?
I'm familiar with the history of Facebook tweaking channels due to abusive apps - just want to make sure I'm current on best practices today.
Are you referring to users who haven't authorized your app or users who did?
Basically, facebook calls this Social Channels and you have a few options, again, depending on if the user is already using your app or not.
If the user is using your app, you have the bookmarks bar which can be used by issuing a App-generated requests.
If the user isn't using your app then a friend of his that is using your app can send him a User-generated request.
You can and should encourage your users to publish your app stories to their friends' feed and/or to send them to friends.
There's that "Automatic Channels" which is discussed in the first link in this answer.
More options are to use the Social Plugins in your website, and to have a mobile version of your app.