Changing iPhone app icon through Cocoa Touch [duplicate] - iphone

This question already has answers here:
Closed 10 years ago.
Possible Duplicate:
Change icon on of an App in iOS 4 in run-time
Is there any way to change the app icon through Cocoa Touch, the way that Calendar app does?

Nope! (or not without jailbreaking and releasing your app in cydia that is) All applications that come with the device run with different permissions than the ones that you install from the app store, and the 'app store apps' can only modify files in their sandbox. the icon.png is not in the sandbox, or the "Documents" folder, it is in the "Appname.app" folder.

No, this is not possible. The icon is set in Info.plist which is part of the app bundle. The app bundle is a collection of all of the files that make up the app (all pictures, videos, files you dragged into Xcode). When submitted to the App Store, the app bundle is signed with a certificate that prevents its modification (so that you cannot change any parts of the app after approval AND so that the device knows it has received a copy from Apple that has not been tampered with along the way). If the icon is set in Info.plist and this cannot be modified, then we're going to have a problem!
This issue is resolved for Newsstand apps. When a magazine is updated, it would only make sense for the icon to update to a picture of the latest issue. If your app is a Newsstand app and you use the NewsstandKit framework, then you can simply change the icon using the code below.
UIApplication *app = [UIApplication sharedApplication];
[app setNewsstandIconImage:[UIImage imageWithContentsOfFile:file]];
Newsstand apps still have a generic icon and icon properties set in Info.plist, but the system can change the icon when told by the app.

Related

ios7 and later causes image icon errors

I sucessfully submitted my app written in swift. That app was targetted for ios8 and later. Now I want to submit the same app for ios7 and later and I have a big problem. I do not know how to solve this. Error message is:
Your binary is not optimized for iPhone 5 - New iPhone apps and apps updates submitted must support the 4 -inch display on iPhone 5 and must include a launch image referenced in the Info.plist under UILaunchImages with UILaunchImageSize value set to {320,568}. Launch images must be PNG files and located at the top-lvel of your bundle, or provided within each .lproj folder if you localize your launch images. Learn more about iPhone 5 support and app launch images by reviewing the 'iOS Human Interface Guidelines' at 'https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html#//apple_ref/dpc/uid/TP40006556-CH14-SW5' and the 'iOS App Programe Guide' at 'https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/App-RelatedResources/App-RelatedResources.html#//apple_ref/doc/uid/TP40007072-CH6-SW12'.
I'm pretty sure you need to add all the image formats prior to IOS 7, could be wrong...
https://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen/

Is it possible to modify an iPhone app to make it run full-screen on the iPad?

I have a paid iPhone app, and I'd like to create an updated version that will run as an iPhone app until the user completes an in-app purchase that will have the app use the full screen.
Is there any way to change an app from a small-sized iPhone app to a full-screen iPad app after the app has already been distributed?
Short Answer: No, it's not possible.
Longer Answer:
This would involve dynamically setting the build settings (specifically Targeted Device Family) at runtime. These settings however, are read and compile/build time. The solution is not impossible, would involve rebuilding the app with different settings. This is unlikely to be permitted by Apple anyway
what you can do is check in your app for any payment made and then if the app has been paid load different data.
The easiest way would be to load different xib files for your layout if the user has paid. The user would however need to quit and relaunch the app to have the payment taken into accound. And you would need in your code to programatically decide to load one xib or the other. But it's doable.

How to enable file sharing in iPhone app using iPhone sdk [duplicate]

This question already has answers here:
Closed 10 years ago.
Possible Duplicate:
How to enable file sharing for my app?
How can i enable file sharing functionality in iPhone app. I am very curious about this to know because when i connect my iPhone with iTunes then it show me three apps. One is Skype and second one is bump and third one is my own app. My app is about augmented reality and show some videos and images on specific markers, also i did social sharing and APNS work and flurry integration that all major working in my app and I did nothing which enable this functionality but why and how this happen. Kindly let me know. This will be great for me. Thanks.
You should Enable UIFileSharingEnabled in the application plist file, Keep this value to YES like this then your application can share data of your application documents
There is an option in {projectname}-Info.plist named "Application supports iTunes file sharing".
Your app will appear in iTunes File Sharing if the UIFileSharingEnabled key is set in its Info.plist. (This appears in the Xcode editor as "Application supports iTunes file sharing ".) If this is enabled in your project and you're not sure how, either you accidentally clicked something for this in Xcode, or you're working from a project template in which it's pre-set.

How to submit Two binary(iPhone and iPad) files for same project in App Store?

I have created Map application for iPhone and I developed same Map application on iPad too by my client requirement. Now I have same Map app project but two .ipa files one for iPhone and another for iPad.
I have already put iPhone version on iTune and it showing status "waiting for review"
1>Now I want to put my iPad version app on iTune with the same project name. How this can be achieve?
2>What Setting should I do in plist file and with xib files?
If there is universal app iPhone/iPad then in app store we can see both iphone and iPad app having same project name...So in my case what steps should I follow. Plz suggest
You can't upload two binary versions of the same app under the same name.
You either have to make a universal app (meaning iPhone/iPad app in one app) or submit under another name.
Start reading this: http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AdvancedAppTricks/AdvancedAppTricks.html
You can submit multiple apps from the same Xcode Project by using multiple Targets, and editing the Bundle ID suffix of each Target so that each Target has a unique Bundle ID. You might also want to change the Product name for each Target in the Build settings so that your apps will have different bundle file names.
Note that, unless the iPad version is different enough (uses iPad only APIs for instance) from the iPhone version, it has been reported that Apple might reject a nearly identical iPhone/iPad pair of apps and request that you submit a single Universal build instead.
If you wanted your iPhone and iPad project to be in the same app, you should have built it that way.
However, if you did specifically want a separate iPhone and iPad app, then you should make the difference clear in the names of each app.
There are many companies who have both iPhone and iPad apps on the appstore. Generally, the iPhone app is just called 'appName' and the iPad version is usually called 'appName for iPad'.
Examples of this are:-
Skype and Skype for iPad
Ebay and Ebay for iPad
If you want the application to have the exact same name in iTunes Connect, you will have to make it a universal app.
You can cancel the "waiting for review" and submit your universal binary instead:
Can I reject a binary that has already been submitted for review?
Yes. You are permitted to reject your binary, to remove it from the
Apple review queue, when your app is in one of the following iTunes
Connect states:
Waiting For Review
In Review
To reject your binary, simply click the Reject Binary button. After
the binary has been rejected, you can then indicate you are ready to
submit another binary through Application Loader, by clicking on the
Ready to Upload Binary button.
Please note that if you reject a binary that is Waiting For Review or
In Review, your review time will be reset and you will start over from
the beginning once you submit a new binary.
iTunes Connect FAQ
However, if you absolutely need to have two seperate applications, you can create a new app in iTunes Connect and name it for example "[your app] for iPad" or "[your app] HD" or something similar like a lot of apps you see on the store.
Are there any particular reasons you aren't submitting a universal application ?
It would have been better if it was a universal app.
In itunes Connect you cant create/re-use apps-name,sku number,bundle-identifier. You could submit a universal app as update.
If you still want multiple apps, Then you will have to create multiple apps in itunes connect with different name, sku number and bundle-id,
But note one thing the name of the application installed in the device is what you give on xcode, not the one in itunes connect. So I guess you could only give that much similarity.
PS if create a app with details{apps-name,sku number,bundle-identifier} and you delete without publishing also, you cant reuse these again.
So tell client the best(may be only possible) solution is Universal app.
if you have the same application for both iphone and ipad, for iphone app name will be - [appliction name], for ipad it should be - [application name ] HD

Is it possible to programmatically change the name of an iPhone app once it's installed on a device?

I'm curious - is it possible to programmatically change the name of an iPhone app that is used on the iPhone OS home screen? I know it's just an entry in the Info.plist file, but I haven't seen any apps doing it.
I'd like to distribute a "Lite" version of an existing app and allow users to upgrade to the full version via in-app purchase. However, once they purchase the app, I'd like to change the app's icon and name to read "Layers Pro" instead of "Layers Lite." I feel like this is important to maintain consistency and a good upgrade experience.
No, it's not possible. The Info.plist and everything in the app bundle is read-only once it's installed on an iPhone.
No, you can't. The only way to change the name of an iPhone app is when you update the app through iTunesConnect.