How to share an image from gallery with my flutter app? - flutter

Can anyone point me to a library or advice on how I can go about sharing an image from the gallery with my app using the share button? I want to have my app appear in the list of apps to share with. There are libraries such as [share] https://pub.dev/packages/share that allow you to share content from your app with other apps but it doesn't do what I am looking for.

TL:DR Coming from android,you can do this with a content provider. then using platfrom channels get it to flutter.
Allowing Other Apps to Start Your Activity
For example, if you build a social app that can share messages or photos with the user's friends, you should support the ACTION_SEND intent. Then, when users initiate a "share" action from another app, your app appears as an option in the chooser dialog (also known as the "disambiguation dialog")
To allow other apps to start your activity in this way, you need to add an element in your manifest file for the corresponding element.
When your app is installed on a device, the system identifies your intent filters and adds the information to an internal catalog of intents supported by all installed apps. When an app calls startActivity() or startActivityForResult(), with an implicit intent, the system finds which activity (or activities) can respond to the intent.
read more from docs

I guess you are searching for something like explained here:
https://medium.com/flutter-community/receive-sharing-files-to-flutter-app-from-another-app-7a84c0c0cd88
You could also try this flutter package: https://pub.dev/packages/receive_sharing_intent

Related

How to make profile as link to share

I am going to create a chat application using flutter with the firebase database, I want to add a profile sharing feature that opens a specific profile by its profile link, e.g. In Telegram, we have our own profile id and we can share it as https://t.me/username, just of one click it opens with telegram app with that specific user profile. Then how do I do this?
Firebase Dynamic Links
Firebase Dynamic Links is the service that does what you're describing. The documentation states the following:
You create a Dynamic Link either by using the Firebase console, using
a REST API, iOS or Android Builder API, or by forming a URL by adding
Dynamic Link parameters to a domain specific to your app. These
parameters specify the links you want to open, depending on the user's
platform and whether your app is installed.
Setup
First, you will need to enable it for your Firebase project through your Firebase console.
Then, you will include its official package for Flutter called firebase_dynamic_links in your app.
You can create Dynamic Links programmatically with your app or maybe Cloud Functions or by using the Firebase console.
Use the firebase_dynamic_links package to check if a Dynamic Link was passed to it when your app opens.
You can view the analytics data to track the performance of your Dynamic Links in the Firebase console.

codename one. How to share a link to your app.

What I want to achieve here is similar to what most apps do, specifically like Youtube. If I share a video on youtube the user gets a link to the video. When the link is clicked the user is automatically taken to the video in the Youtube app (if the user has the app). I want that sort of functionality. My app has different stores on it and information about the store. I want the user to be able to "Share" a store via Whatsapp, sms etc so then when the receiver clicks on the shared link they are automatically taken to that specific store's page INSIDE my app. And if they do not have the app the link must take them to my app's page in the app store to allow them to download it. How do I achieve this in codename one. I looked at the share functionality in the developer doc and the How To section and that only shows me how to share text or images. Not a link to my app.
You can use the ShareButton or it's underlying native share API call (notice this behaves differently on devices as this relies on native functionality).
To share one URL that works on all platforms you need server side code as we have no way of knowing if the guy who will click the link has the same device as you have.
How to make QR code for BOTH Android Market and App Store answers that although it discusses QR codes this is applicable to links as well e.g. http://onelink.to/ looks like it could solve that although I haven't tried their service.
The correct answer to this question was actually URL intercepting. http://www.codenameone.com/blog/intercepting-urls-on-ios-android.html You share a url from your app to an external application. When the user opens that lick in an external application the user is automatically taken to your app if your app intercepts it.

How to launch iOS app via custom URL and allow to open a webpage if it's not installed?

I'd like to be able to send invitation in an email to a specific "event" happening inside my iOS app. So I figured I'd need to use custom URL. That's fine.
But I'd also like to be able to handle the user that doesn't have the app installed yet, to be taken to a mobile Safari and to the webpage with installation instructions for the app.
What would be the best way to do it?
I could try the following:
In the email I send a link to a http://www.example.com/joinevent/?id=foo
User is taken to a Safari webpage that sends a redirect to mycustomscheme://joinevent/?id=foo
If the user doesn't have the app installed this redirection won't work and he stays in the Safari - I could then handle the displaying of installation instructions probably.
But this approach doesn't seem "natural" for me. Is there a better/more native way to do it?
Try http://rdrct.it
It is a web service that allows you to achieve exactly this functionality very easily.
Full disclosure - I created rdrct.it
Here's the basics:
Login to the site, create a project for your particular app. Choose a unique code (this could be the name of your app).
You'll then be provided with a URL in the form: http://rdrct.it/uniqueCode
Once you've done that, you need to register the app's ID in the app store, and also details about the custom URL scheme. Tick "Auto-redirect" - what it will then do is try to open the app, and if that fails, it will automatically send the user to the app store.
If the app is opened, then the querystring is also passed to the app, so in your example case, the device will have been served: mycustomscheme://joinevent/?id=foo
It also works across multiple device types, so if you have the app available for Blackberry, Android or Windows Phone, then it will also do the same for those depending on which device type the user is using.
Like I said, I created it, but it should solve your problem.
If you are using Distimo to track you app analytics, they provide a shortlink to your apps that can be used also used to track conversions. It shows a custom page depending on the device used to access. This is especially convenient if you have the same app published in the AppStore, Google Play, Amazon, etc.

Facebook Integration in iOS app

I need to post a user-specific text, determined by him, on his wall/timeline when he presses a button (in facebook's tutorial, they make the user login when the app launches, and then it does nothing).
There is a lot of information on the internet but every site does it in other way.
Just wanted to know if there's a specific way to do it.
Thanks!
A quick easy way to add facebook to your app is ShareKit (http://www.getsharekit.com/). This also allows you to add other social network site to your app.
You might want to try Socialize: http://www.GetSocialize.com. It'll allow app users to comment & like within the app, with the option of also sharing out to a social network (Facebook currently live; Twitter coming). Full feature list at http://go.GetSocialize.com/features
DROdio

How to get uploaded tracks from soundcloud?

I have implemented Sound cloud api in my app to export songs to soundcloud.
Now,I want to launch a browser in my app.This browser will allow the user to browse and listen to various other users songs that have been exported to SoundCloud through my app.
Also,the songlist should not include tracks which are not uploaded through my app.
The following is a screenshot from an app which uses similar functionality:
The only change in my app will be that I dont want the Sessions list.
Please suggest how to do this.
I am with an answer for my question. wat a relief.. :)
To get the app id first, the url is to be resolved by:
http://api.soundcloud.com/resolve?url=http://soundcloud.com/apps/{appName}
With this, you will get your app id.
(For more on Resolver, can refer to the link : https://github.com/soundcloud/api/wiki/12-Resolver)
Now, you can get tracks created with your app like this:
http://api.soundcloud.com/apps/{app-id}/tracks
For the browser look, it is to be customised on your own. Its not a standard from SoundCloud.