ios registering document in document files - iphone

I am working on app that reads gpx (topografix) file attached to an email. I have successfully registered this document type to my app so whenever I select such a file I get the option to open it by this app on iPhone. It works fine on my iPhone but on iPad my app is not recognised for opening such a file so my app does not appear on the list of apps that are capable to open it. This app uses iPhone environment and is set for iPhone not for universal environment. By changing on universal environment does not change anything. Why is my app not recognised in the list?

Well the conversion of an iphone app to ipad app has to be done if you want to make it universal.
refer this

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/

Get name of iOS app from path

I'm developing an app for jailbroken iOS devices that collects statistics about installed apps (ideally stats about both App Store and Cydia apps). Given the path of an app, is there an easy and reliable way to get the name of the App (as it appears in the Springboard)? Or is there a better way, not using the path at all (ie, is the info centralized somewhere)?
Here is a link to a StackOverflow that shows how to get a bundle info plist value (In this case the version).
How can my iphone app detect its own version number?
I beleive the attribute you are looking for is CFBundleDisplayName.
Here is apples list of attributes you can obtain.
http://developer.apple.com/library/mac/#documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW1
Every app has an info plist that contains its name and icon. Just look inside the .app bundle.

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

How do I create a app specific file type for iOS

How do I create an app specific file type for iOS and then save my app's data into this file which I can attach to emails and then other uses of the app can open this file in the app.
Mindjet for iPad does this.
See this question: How do I associate file types with an iPhone application?.
And read up on UTI: http://developer.apple.com/library/ios/#documentation/FileManagement/Conceptual/understanding_utis/understand_utis_intro/understand_utis_intro.html

iPhone - which location the crash log is saved in iPhone app

I'd like to access the crash log in iPhone app without Third Party library.
Do you know where the crash log is saved in iPhone app?
I know the iPhone app folder structure is as followed:
Documents/
Library/
Preferences/
MyApp.app/
Default.png
icon.png
Info.plist
tmp/
EDIT:
If the crashes are not stored in Application folder,
do you know how UKCrashReporter and other third party library do that?
You need to be connected to iPhone device and Select Window -> Organizer -> Device Logs.
I have a jailbroken iOS device, so I can answer the first part of your question easily (although you may have already done so yourself). The standard crash logs are stored on the device in the following folder:
/private/var/mobile/Library/Logs/CrashReporter/
If you don't have a jailbroken device and the logs aren't visible in Xcode, you should be able to access the files with a iOS file explorer like i-FunBox, which should be able to access the file system even without jailbreak.
As for the second part of your question, I would think that at least some third party crash reporters save the crash data in the app's folder itself, judging by the following directories (which were empty as the app has not yet crashed on my device):
// ... was the identifier for the app path, removed for readability
/private/var/mobile/Applications/.../Library/Caches/com.plausiblelabs.crashreporter.data
/private/var/mobile/Applications/.../Library/Caches/com.plausiblelabs.crashreporter.data/SkobblerUS
/private/var/mobile/Applications/.../Library/Caches/com.plausiblelabs.crashreporter.data/SkobblerUS/queued_reports
/private/var/mobile/Applications/.../Library/Caches/crashes
Again this is something you could verify with an iOS file browser.