Localize Facebook and Twitter Share Panels on iOS - ios

My app uses different languages, within the app the language can be changed and I have share button in my app which shares the images in Facebook and twitter. By default it appears in English. After changing the language in my app to french, The content in Facebook (i.e) Post and cancel button should be changed to french. Is it possible and how to do it?

You don't have control over the language of the share panels because iOS handles that for you, automatically localizing them based on the setting that the user picked in the iOS settings app. Your application probably shouldn't have a localization option in it unless there's a very good reason for it, but in any event, you can't localize the share panel.

Related

iOS App Default Language

I have an app that support both Chinese and English, and when my phone is configured to Chinese or English, things display quite normally, but when my phone is in French(by default the interface would be in English), everything is in English EXCEPT the UIActivityViewController is in Chinese that will pop up once user click a "share" button in my app.
I do not know how to modify this, any helps will be appreciated.
Note: my app uses a Localize-Swift library which allows user to choose a desired language from the settings within the app which means the app language could be different from the system language, if user chooses one from the app then switch to another system lang. Also, English IS set to be the development language in Xcode and Base Localization is NOT used.

Sharing an image/link to my app in IOS

I'm trying to find out how I can add sharing support to my app using React Native. I've found documentation for displaying the action sheet from within my app but nothing on how I can add support for users to share images/links to my app. I'm not even sure what Apple calls this feature so it's possible I may not be searching with the right keywords.
e.g.
On #1 if you press the share button at the bottom middle of the safari app it will bring up a popup where you can choose an app e.g. Facebook, then if you press on Facebook it will open Facebook with a url to the page you want to share from safari where you can add a comment about the link. I want to replicate this behavior but within my own app. I want my app to be available to choose when I press the share button on the safari app which I will then open a popup window that displays the link the user wants to share allowing them to add a comment before posting the link. Is this possible with react native? I see that I have the option share with other apps (my fidelity app, sears shop your way, etc so It seems like you can have a non system app do this.
They are called Share extensions and they are part of the Extensibility features. They are system-wide Share Sheets. Not to be mistaken with Action Extensions.
Share extensions have colored icons.
Action extensions use monochromatic icons.
Anyway the links do not display UNTIL you have clicked the app in the share sheet.
Editor > Add Target > iOS > Application Extension > Share Extension
Configure the App Group for your app target.
On the Capabilities tab, turn on the App Groups switch and select the group you created. (if you want to enable code sharing between the extension and container app you can put the code in a framework and link to it)
Expand the group you created and you will see a storyboard file, an entitlements file, a view controller and a plist file under the Supporting Files group.
You can use the storyboard file to create a custom interface or do it programatically but Share extensions come with a default compose view that looks like the Facebook and Twitter views.

How can i change the app settings language based on selected app language in ios.?

My app supports 7 language. when the user selects from the choice i will restart the app so that app changes to the selected language. But i need the app settings such as settings bundle to be updates as per the app language.I can able to localise the settings based on device language but not on selected app language.
The answer might be a hard NO for it. Inter-App communication doesn't let you localize the native apps.
App is localized to spanish but device is set to english then
If your app is showcasing address then book english is shown.
If the app is using camera then english is shown (unlesss you create
custom camera interface)
If app is triggering social framework like Facebook,twitter etc they
also shown in english.
Here in your case the Settings screen can be localized just in the same way that info plist localizes, but screen will localized only when the device is set to that language. http://useyourloaf.com/blog/localizing-iphone-app-settings-strings/

How can I show my app in the menu that is displayed when text is selected in another iOS app?

Let's say I am in Safari and I select some text on a web page. A menu pops up that shows "Copy" and possibly other options.
How can I show my app in that menu?
(The purpose would be to send that text to my app in a custom url scheme.)
Edit:
I thought I saw this behavior in safari, but I was mistaken. It was in an app called Equipd.
Here is an example:
![enter image description here][2]
Is this due to a collaboration between Equipd and Pleco? Or can Equipd just do this because it knows about Pleco's custom url scheme? Or is something else going on here?
It's not possible to edit this kind of menu without using jailbreak-methods. But Apple won't allow these kind of methods in their App Store apps.
But you can use the new App Extensions which Apple introduced with iOS 8. You should check the App Extension Programming Guide Apple provides.
There are different extension-types. What you will need is the Share Extension.

In-app preferences screen in an iOS 7 app

I'm fairly new to iOS development and I am porting an Android app to iOS 7. The Android app provides a screen that allows the user to change a number of non persistent settings. Because these are not saved, it doesn't seem appropriate to me to expose them, on iOS, as preferences via a settings bundle and the built-in Settings app. So I'm looking at an in-app settings screen, which I understand is allowed - but perhaps not encouraged - by Apple.
Some questions:
Am I correct that an in-App approach is allowed by Apple? Most example code seems to use settings bundles. Am I going to have problems when the app is submitted to the App Store?
I can put the settings UI in a simple UITableViewController, but is there an approved way to expose this to the user? XCode 5 doesn't provide a settings identifier (and icon) for toolbar buttons, and the "Info" identifier (letter i inside a circle) seems to have been dropped too. Should I use a custom icon? Are there any de facto standards?
I haven't seen this kind of UI element before on iOS but my exposure to the platform as a user is limited.
There is nothing wrong with doing an in-app preference (table)view. You won't be rejected for that (this point seems to be way too much exagerated outside the iOS community). There are guidelines that you can follow: iOS Human Interface Guidelines... or not. As long as you don't use private APIs (assuming you know how to access them anyway), you're fine! So you can use a custom icon, the "i" button, or any UI element that convey the reasonable meaning of providing access to more info/preference.
In your code, you can use the class NSUserDefaults (with the standardUserDefaults) to store your preferences.
Many apps have in-app settings. It's fine. Apple even states that it is fine. Just don't have both.
Use a custom icon. Many apps seem to use an icon that looks like a gear.

Resources