Memleak with UIDocumentPickerViewController via SwiftUI - ios

The application is built for iOS. I want user to choose a file from it's directory and get the url of chosen one. Apple recommends UIDocumentPickerViewController to solve this issue. I wrapped it in UIViewControllerRepresentable, so it is the first place, where I can mistake
import SwiftUI
import MobileCoreServices
struct DocumentPickerView: UIViewControllerRepresentable {
func makeCoordinator() -> Coordinator {
return DocumentPickerView.Coordinator()
}
func makeUIViewController(context: Context) -> UIDocumentPickerViewController {
let picker = UIDocumentPickerViewController(documentTypes: [String(kUTTypeItem)], in: .import)
picker.allowsMultipleSelection = false
picker.delegate = context.coordinator
return picker
}
func updateUIViewController(_ uiViewController: UIDocumentPickerViewController, context: Context) {
}
class Coordinator: NSObject, UIDocumentPickerDelegate {
func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
print("url: \(urls[0].absoluteString )")
}
}
}
struct ContentView: View {
#State var showPicker = false
var body: some View {
Button(action: {
self.showPicker.toggle()
}, label: {
Text("Push me")
})
.sheet(isPresented: self.$showPicker) {
DocumentPickerView()
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
The reason I think that there is a problem is that Xcode instruments show that memory leaks, here the trace:
32 Bytes 100.0% 1 start
32 Bytes 100.0% 1 main
32 Bytes 100.0% 1 UIApplicationMain
32 Bytes 100.0% 1 GSEventRunModal
32 Bytes 100.0% 1 CFRunLoopRunSpecific
32 Bytes 100.0% 1 __CFRunLoopRun
32 Bytes 100.0% 1 __CFRunLoopDoObservers
32 Bytes 100.0% 1 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__
32 Bytes 100.0% 1 _afterCACommitHandler
32 Bytes 100.0% 1 _cleanUpAfterCAFlushAndRunDeferredBlocks
32 Bytes 100.0% 1 _runAfterCACommitDeferredBlocks
32 Bytes 100.0% 1 __56-[UIPresentationController runTransitionForCurrentState]_block_invoke.478
32 Bytes 100.0% 1 _UIViewControllerTransitioningRunCustomTransition
32 Bytes 100.0% 1 +[UIView(Animation) _setAlongsideAnimations:toRunByEndOfBlock:]
32 Bytes 100.0% 1 ___UIViewControllerTransitioningRunCustomTransition_block_invoke.648
32 Bytes 100.0% 1 +[UIInputResponderController _pinInputViewsForInputResponderController:onBehalfOfResponder:duringBlock:]
32 Bytes 100.0% 1 ___UIViewControllerTransitioningRunCustomTransition_block_invoke_2
32 Bytes 100.0% 1 -[UIViewControllerBuiltinTransitionViewAnimator animateTransition:]
32 Bytes 100.0% 1 -[UITransitionView transition:fromView:toView:removeFromView:]
32 Bytes 100.0% 1 -[UITransitionView _startTransition:withDuration:]
32 Bytes 100.0% 1 +[UIView(UIViewAnimationWithBlocks) conditionallyAnimate:withAnimation:layout:completion:]
32 Bytes 100.0% 1 __50-[UITransitionView _startTransition:withDuration:]_block_invoke.169
32 Bytes 100.0% 1 +[UIView(UIViewAnimationWithBlocks) animateWithDuration:delay:options:animations:completion:]
32 Bytes 100.0% 1 +[UIView(UIViewAnimationWithBlocks) _setupAnimationWithDuration:delay:view:options:factory:animations:start:animationStateGenerator:completion:]
32 Bytes 100.0% 1 +[UIViewAnimationState popAnimationState]
32 Bytes 100.0% 1 -[UIViewAnimationState pop]
32 Bytes 100.0% 1 -[UIViewAnimationState _runAlongsideAnimations]
32 Bytes 100.0% 1 __63+[UIView(Animation) _setAlongsideAnimations:toRunByEndOfBlock:]_block_invoke
32 Bytes 100.0% 1 -[_UIViewControllerTransitionContext __runAlongsideAnimations]
32 Bytes 100.0% 1 -[_UIViewControllerTransitionCoordinator _applyBlocks:releaseBlocks:]
32 Bytes 100.0% 1 __54-[_UISheetPresentationController transitionWillBegin:]_block_invoke.345
32 Bytes 100.0% 1 +[UIView(Animation) performWithoutAnimation:]
32 Bytes 100.0% 1 __54-[_UISheetPresentationController transitionWillBegin:]_block_invoke_2
32 Bytes 100.0% 1 -[_UISheetLayoutInfo _layout]
32 Bytes 100.0% 1 -[_UISheetPresentationController _sheetLayoutInfoLayout:]
32 Bytes 100.0% 1 -[UIView(Hierarchy) layoutBelowIfNeeded]
32 Bytes 100.0% 1 CA::Layer::layout_if_needed(CA::Transaction*)
32 Bytes 100.0% 1 -[CALayer layoutSublayers]
32 Bytes 100.0% 1 -[UIView(CALayerDelegate) layoutSublayersOfLayer:]
32 Bytes 100.0% 1 #objc _UIHostingView.layoutSubviews()
32 Bytes 100.0% 1 _UIHostingView.layoutSubviews()
32 Bytes 100.0% 1 ViewRendererHost.render(interval:updateDisplayList:)
32 Bytes 100.0% 1 closure #1 in ViewRendererHost.render(interval:updateDisplayList:)
32 Bytes 100.0% 1 closure #1 in closure #1 in ViewRendererHost.render(interval:updateDisplayList:)
32 Bytes 100.0% 1 ViewGraph.updateOutputs(at:)
32 Bytes 100.0% 1 closure #1 in ViewGraph.updateOutputs(at:)
32 Bytes 100.0% 1 ViewGraph.runTransaction(in:)
32 Bytes 100.0% 1 AG::Subgraph::update(unsigned int)
32 Bytes 100.0% 1 AG::Graph::update_attribute(unsigned int, bool)
32 Bytes 100.0% 1 AG::Graph::UpdateStack::update()
32 Bytes 100.0% 1 partial apply
32 Bytes 100.0% 1 protocol witness for static UntypedAttribute._update(_:graph:attribute:) in conformance PlatformViewChild<A>
32 Bytes 100.0% 1 PlatformViewChild.update(context:)
32 Bytes 100.0% 1 closure #1 in PlatformViewChild.update(context:)
32 Bytes 100.0% 1 swift_weakInit
32 Bytes 100.0% 1 swift::RefCounts<swift::RefCountBitsT<(swift::RefCountInlinedness)1> >::formWeakReference()
32 Bytes 100.0% 1 operator new(unsigned long)
32 Bytes 100.0% 1 malloc
With multiple calls at allocation I have such entities that have lost theirs memory:
Category Persistent # Persistent # Transient Total Bytes
UIDocumentBrowserViewController 22,50 KiB 15 0 22,50 KiB
DOCRemoteViewController 22,50 KiB 15 0 22,50 KiB
_UIResilientRemoteViewContainerViewController 13,36 KiB 15 0 13,36 KiB
_UIRemoteView 6,80 KiB 15 0 6,80 KiB
_UISizeTrackingView 6,56 KiB 15 0 6,56 KiB
DOCRemoteBarButtonTrackingView 5,62 KiB 15 0 5,62 KiB
DOCConfiguration  2,58 KiB 15 0 2,58 KiB
DOCRemoteContext 1,88 KiB 15 0 1,88 KiB
_UIViewServiceInterface 1,41 KiB 15 0 1,41 KiB
__NSXPCInterfaceProxy__NSExtensionContextVending 1,17 KiB 15 0 1,17 KiB
UISystemDefaultTextInputAssistantItem 1,17 KiB 15 0 1,17 KiB
UIKeyboardBIUImageGenerator 960 Bytes 15 0 960 Bytes
_UIViewServiceReplyControlProxy 720 Bytes 15 0 720 Bytes
Swift.__SwiftDeferredNSArray 480 Bytes 15 0 480 Bytes
DOCRemoteBarButton 480 Bytes 15 0 480 Bytes
NSWeakObjectValue 480 Bytes 15 0 480 Bytes
_UIRemoteViewService 480 Bytes 15 0 480 Bytes
_UIViewServiceImplicitAnimationEncodingProxy 480 Bytes 15 0 480 Bytes
DOCWeakProxy 240 Bytes 15 0 240 Bytes
UPD:
I just started feedback to solve this problem, but I found that there are no similar problems, so if you have the same one please report too

This is definitely Apple's bug, so worth submitting feedback to them.
Meanwhile here is a safe workaround applicable for majority of use-cases. Tested with Xcode 11.4 / iOS 13.4. The idea is to use shared document picker instance and just reconfigure it on every call.
struct DocumentPickerView: UIViewControllerRepresentable {
static let picker = UIDocumentPickerViewController(documentTypes: [String(kUTTypeItem)], in: .import)
func makeUIViewController(context: Context) -> UIDocumentPickerViewController {
Self.picker.allowsMultipleSelection = false
Self.picker.delegate = context.coordinator
return Self.picker
}
// ... other code no changes

Related

Drawing editable shapes on large image - performance issue

I'm creating a drawing app using Xamarin. Althought, my question is also addressed to iOS developers.
My app loads huge images (20k x 20k). I'm using CATiledLayer to load image tiles dynamically. Thanks to that, zoom and scrool run smoothly.
However, I need to implement effective drawing mechanism. My first attempt was to draw a shape as a separate UIView and add it to TiledView's Subviews. Unfortunately, when I add about 20/30 new shapes then app crashes (I guess it's a problem with memory).
I need to find a better solution. My shapes need to be editable, so I need to recognize selection on each shape which is already drawn on the TiledView.
What could be the best mechanism to avoid memory trouble in that case?
CRASH LOG:
ncident Identifier: C9C8CCA2-C696-47E2-AA9D-A8C31FFBAF31
CrashReporter Key: a67a03df60dd7720558ad435b234abe43d11b3f7
Hardware Model: iPad5,4
OS Version: iPhone OS 8.1.3 (12B466)
Kernel Version: Darwin Kernel Version 14.0.0: Mon Jan 12 21:30:33 PST 2015; root:xnu-2783.3.26~3/RELEASE_ARM64_T7001
Date: 2015-09-10 17:03:33 +0200
Time since snapshot: 90 ms
Free pages: 1933
Active pages: 121405
Inactive pages: 60751
Speculative pages: 80
Throttled pages: 0
Purgeable pages: 2
Wired pages: 315568
File-backed pages: 58380
Anonymous pages: 123856
Compressions: 1741284
Decompressions: 447152
Compressor Size: 8767
Uncompressed Pages in Compressor: 74266
Page Size: 16384
Largest process: MyAppMobileiOS
Processes
Name | | CPU Time| rpages| purgeable| recent_max| lifetime_max| fds | [reason] | (state)
lockbot <53895193cd6633249ce169c478502497> 0.055 202 0 - 725 50 (daemon) (idle)
pfd <8ce9eb62121b30789b79e1f436991382> 0.015 142 0 - 292 50 (daemon) (idle)
cloudd <c52c2112d0273e96b8590473a61e7620> 6.121 690 0 - 2504 50 (daemon) (idle)
WirelessRadioMan <c4181e6d863133e8aa0c95e77a7bb206> 0.026 289 0 - 835 50 (daemon) (idle)
adid <4311d58b77b73fd4bf2c9e9e0bbe7102> 0.028 138 0 - 567 50 (daemon) (idle)
com.apple.Mobile <a1ced7e68eda30b1937b477edc680e47> 0.020 185 0 - 716 50 (daemon) (idle)
com.apple.Mobile <865e9aa3dce0392393a2445e115bc26f> 0.022 185 0 - 518 50 (daemon) (idle)
softwareupdated <fbc339ae37193ef1b1bd2a9d5e9bcbe4> 0.031 212 0 - 601 50 (daemon) (idle)
mobileassetd <2a22e27544cc3061a22b02482e465e18> 0.336 581 0 - 2101 50 (daemon) (idle)
misd <33855e3c639237059e7c9d7dda6aca90> 0.033 206 0 - 823 50 (daemon) (idle)
CallHistorySyncH <bc9285858ef43d54840605171b184fa2> 0.060 431 0 - 1252 50 (daemon) (idle)
IMDPersistenceAg <5fa1bcbbda9430798334affdb70def14> 0.030 277 0 - 930 50 (daemon) (idle)
timed <6fa98ab7f5de312b9bfed47e04e3a43e> 0.032 277 0 - 1031 50 (daemon) (idle)
AppleIDAuthAgent <32f4603750953460b1a7cb4969fd7cf5> 0.045 318 0 - 1743 50 (daemon) (idle)
keybagd <04b17e6606dd367885be8033ee6f077a> 0.015 161 0 - 381 50 (daemon) (idle)
biometrickitd <6298f82913613677b4b7207a26c585ec> 0.421 261 0 - 786 50 (daemon) (idle)
mediaremoted <baa09addc0ae3b55a72cfe7b2699a962> 0.033 318 0 - 1294 50 (daemon) (idle)
recentsd <c21dbb35d7a232298410e388a1752a23> 0.063 420 0 - 1455 50 (daemon) (idle)
softwareupdatese <4709ed9e2ad1314c8967b0ccefdd61eb> 0.258 977 0 - 1713 50 (daemon) (idle)
geod <0f816c02eb453d968c7bd1e4c1ecb994> 0.149 642 0 - 1539 50 (daemon) (idle)
MobileGestaltHel <7c83454f8c06366ebf04aea3bb88684b> 0.040 180 0 - 559 50 (daemon) (idle)
calaccessd <0a7ad7bbfb523bfdbae43aa6f21279f6> 0.191 631 0 - 1786 50 (daemon) (idle)
awdd <58036e1703903ee798a8803de204c300> 0.059 443 0 - 1216 50 (daemon) (idle)
lsuseractivityd <a9a6b77429543057b3e8dcf41f843882> 0.065 425 0 - 1977 50 (daemon) (idle)
com.apple.uifoun <87486c98c2873ab7a0a1a044a5a0cfd3> 0.029 275 0 - 939 50 (daemon) (idle)
DuetHeuristic-BM <e333cee8cc9e3dc282446623596bab84> 0.117 300 0 - 1117 50 (daemon) (idle)
healthd <9c827f1747f83866b20dcf4e398cc04d> 0.034 306 0 - 1035 50 (daemon) (idle)
com.apple.Stream <203112144ccc3e84acf77312bcf37070> 2.857 187 0 - 753 50 (daemon) (idle)
bird <646b4254a19a34caa4840f8001fd4420> 0.058 427 0 - 1779 50 (daemon) (idle)
assetsd <4f3af4038d6a31e8877838accafce687> 0.096 671 0 - 2159 50 (daemon) (idle)
findmydeviced <36e2b8af21133fb7a5a6271ab4d4f8de> 0.139 638 0 - 2122 50 (daemon) (idle)
nehelper <8837f4419593305c9831c00d25a97eaf> 0.869 258 0 - 822 50 (daemon) (idle)
assistantd <dff049e87a5932fabdffe16c4714f9a7> 0.071 544 0 - 2332 50 (daemon) (idle)
profiled <7b81e857b6ef3a7587f5d82f33801dcb> 1.409 596 0 - 2416 50 (daemon) (idle)
pkd <caa0944ef38235e7ac99199add47d66d> 0.038 289 0 - 707 50 (daemon) (idle)
accountsd <75b3925e9bec337abda4f51e69fc8aa3> 8.768 712 0 - 1816 50 (daemon) (idle)
mobactivationd <73043288866c3d4ca5eac0125c844edf> 0.084 244 0 - 858 50 (daemon) (idle)
misagent <ddb04cb78e2537a088fbe6c299c0ed8e> 0.046 177 0 - 418 50 (daemon) (idle)
mobile_installat <edbce91b2e3c348f8f4ad95fb6b1ad46> 0.447 289 0 - 1015 50 (daemon) (idle)
streaming_zip_co <60920fc5a7c335beb44817afc5fe72c3> 3.391 281 0 - 1111 50 (daemon) (idle)
coreduetd <aef9d0f50b733e809cad3a94e579e421> 82.665 1127 0 - 2401 50 (daemon) (idle)
sandboxd <bd8f8b9f25243f9986b3ce97fee405cc> 0.374 196 0 - 732 50 (daemon) (idle)
installd <99b95276bb41375fa847581e6fbe6374> 0.707 359 0 - 1339 50 (daemon) (idle)
swcd <05434abfd6103a369f3321d5bd15c96e> 0.011 194 0 - 533 50 (daemon) (idle)
containermanager <7036996ffbed3c0e9b50d8868efe28e0> 0.214 248 0 - 702 50 (daemon) (idle)
securityd <90eafc65815f356fab632f1752d53b24> 22.648 661 0 - 1707 50 (daemon) (idle)
gamecontrollerd <f41fdd3b557336b6b146bb00a33eab9f> 0.028 287 0 - 1200 50 (daemon) (idle)
aosnotifyd <8928d77645f134aa9150588fe1c143cf> 0.131 581 0 - 2008 50 (daemon) (idle)
syncdefaultsd <6f6a68c431cc37238c9e618de999477c> 0.065 421 0 - 1260 50 (daemon) (idle)
nsurlstoraged <85de3fa57a65304a959e6c2956042080> 1.553 451 0 - 1471 50 (daemon) (idle)
coresymbolicatio <09a629143bfc3a7d9228b414bb958ae9> 0.015 132 0 - 727 50 (daemon) (idle)
diagnosticd <274578acfd6d358a95c961c0bab148a9> 0.012 148 0 - 269 50 (daemon) (idle)
seld <c955a19f0fbd33118c611afe19061379> 3.394 303 0 - 1156 50 (daemon)
nsurlsessiond <ab90763d8a453fc68012fabc4b4f55fb> 2952.876 624 0 - 2134 50 (daemon)
nfcd <edf2425212b632dbb5ef155ee1600bbb> 2.724 255 0 - 680 50 (daemon)
passd <56971afa88b53f05a37688cad47b4160> 157.996 810 0 - 2715 50 (daemon)
afcd <4c7ac1d53ab73eada82020285315196f> 0.038 177 0 - 402 50 (daemon)
notification_pro <b143453e80393938a7ba23a0181dc52c> 2.654 215 0 - 625 50 (daemon)
MobileMail <4b48abd990e93dbea47db1cbf328da9e> 0.317 1302 0 - 3650 50 (resume) (continuous)
lsd <f554bd07b90a3cfc9d9ef9f8e234833c> 36.562 474 0 - 1401 50 (daemon)
tccd <f2878273872231afa1a6e0af2dcb73a6> 2.322 310 0 - 1084 50 (daemon)
kbd <f66b6a1e58b93ad9a2c5bd2e1b278a89> 3.316 895 0 - 3607 50 (daemon)
MyAppMobileiOS <3f455836ca6a322eac86d527e1523ab1> 14.932 307041 0 - 139221 50 [per-process-limit] (frontmost) (resume)
ptpd <a06176d3eefe3e3c8549bb4f6d340658> 2.108 774 0 - 2011 50 (daemon)
BTServer <fb2cd87aeac73d17bf13c86301b5b484> 66.048 631 0 - 2001 50 (daemon)
wifid <dd76567ec94c37d9b1c94cd96424b2a9> 1099.027 1335 0 - 2267 50 (daemon)
lockdownd <6e013570f34d36daa8738867f8421001> 162.384 436 0 - 2710 50 (daemon)
discoveryd <68f73878299336d7872b0ae9ce3f7f08> 2956.940 935 0 - 2164 100 (daemon)
imagent <432c43382eeb3724894a973cd6f5a399> 50.719 711 0 - 1777 50 (daemon)
identityservices <9d4b00e3c6003685ac8697c59f4e4d38> 149.813 954 0 - 2601 50 (daemon)
mediaserverd <a0354e528bc431958df0d50830bead36> 33.273 1696 0 - 4212 50 (daemon)
cfprefsd <4325eab208063b998046460a4c2ee484> 98.702 537 0 - 2497 50 (daemon)
syslogd <05f6b5e5512938a892bac5af23ab1c08> 1605.858 320 0 - 2162 50 (daemon)
iaptransportd <c10fd2029e2e315d92873b74a92c6e9c> 181.800 354 0 - 983 50 (daemon)
powerd <2b4ae8758a5b3b709a97c452ec08923b> 286.535 406 0 - 727 50 (daemon)
apsd <bb925404cb1137b09b85671a8d2c7656> 312.283 1037 0 - 4497 50 (daemon)
networkd <ad1db85ed3c53c6fadbd858f9a88dd20> 237.182 778 0 - 5847 50 (daemon)
dataaccessd <33bcaea3bc473f128685f4df14a115eb> 13.681 960 0 - 2823 50 (daemon)
sharingd <233b174d5619396cb3af72c7d7e51985> 12.777 885 0 - 2694 50 (daemon)
searchd <eff930e81e4d38f796034db851dad1fe> 757.973 1193 0 - 5590 50 (daemon)
locationd <a57577b0423133a0b17579011ef1c65f> 2051.091 3549 0 - 5035 50 (daemon)
SpringBoard <d9487116f8c239d2b5fb32c12168cac1> 10.514 6275 0 - 25629 50
backboardd <45eb8ac74abd31b386cb3b7ba27618ea> 54.692 97037 0 - 131444 50 (daemon)
fseventsd <16c9b62bb28c388ca10d54dbff18c4f8> 143.831 979 0 - 2080 50 (daemon)
configd <ed40fcde35ae337ab3b70073199564b1> 117.409 1478 0 - 1865 50 (daemon)
fairplayd.A2 <6ca40f79d0ad34d5b4df0a80fce4bc5d> 3.232 176 0 - 1325 50 (daemon)
wirelessproxd <ab1fa7e43a7c3f9393533404c2cc80b8> 2.607 299 0 - 1082 50 (daemon)
assertiond <10ec04add18f3ecd8a8efbb1cc4e2bd6> 52.340 366 0 - 2071 50 (daemon)
distnoted <cb5e76091dc53ceeaf65290f8e197a89> 7.723 244 0 - 500 50 (daemon)
discoveryd_helpe <492c39ae2d643adca0ed971675c77406> 0.151 187 0 - 796 50 (daemon)
filecoordination <519743feb6cb36ff871945656d950d8b> 0.314 298 0 - 1027 50 (daemon)
aggregated <281958649a3130aab6ecb1aa47f0a6c1> 4.644 1092 0 - 2275 50 (daemon)
UserEventAgent <f5a211b9c88e3fa481f2bd1ee1f5a921> 2.033 886 0 - 2815 100 (daemon)
CommCenter <33412ab229c738c8860c70803fed173b> 1329.544 3270 0 - 6434 50 (daemon)
notifyd <5fa8fd5e44c83f64be1475b882b16c82> 1302.113 520 0 - 615 50 (daemon)
ReportCrash <698156bee7ff37c0ab9fd8fe15a6ee32> 0.080 395 0 - 829 50 (daemon)
End

Xcode 6.2 debugger detaches from device on app crash

Xcode 6.2's debugger doesn't seem to be catching a crash from my application. Whenever it crashes, I just get a popup that says:
Restore the connection to "Agile Lab's iPhone 6 Plus" and run "Tag
Beta" again, or if "Tag Beta" is still running, you can attach to it
by selecting Debug > Attach to Process > Tag Beta.
I have breakpoints on and a breakpoint for "All Exceptions." When I go to Window > Devices and hit "View Device Logs" it shows this:
Hardware Model: iPhone7,1
OS Version: iPhone OS 8.1.3 (12B466)
Kernel Version: Darwin Kernel Version 14.0.0: Mon Jan 12 21:30:05 PST 2015; root:xnu-2783.3.26~3/RELEASE_ARM64_T7000
Date: 2015-03-31 15:12:15 -0400
Time since snapshot: 1230 ms
Free pages: 2404
Active pages: 40050
Inactive pages: 18785
Speculative pages: 1206
Throttled pages: 0
Purgeable pages: 524
Wired pages: 147884
File-backed pages: 11282
Anonymous pages: 48760
Compressions: 487127
Decompressions: 189679
Compressor Size: 40449
Uncompressed Pages in Compressor: 103077
Page Size: 16384
Largest process: Tag Beta
Processes
Name | <UUID> | CPU Time| rpages| purgeable| recent_max| lifetime_max| fds | [reason] | (state)
WirelessRadioMan <REMOVED_FOR_PRIVACY> 0.036 295 0 - 889 50 [vm-pageshortage] (daemon) (idle)
nsurlstoraged <REMOVED_FOR_PRIVACY> 0.072 294 0 - 680 50 [vm-pageshortage] (daemon) (idle)
seld <REMOVED_FOR_PRIVACY> 0.052 218 0 - 995 50 [vm-pageshortage] (daemon)
nsurlsessiond <REMOVED_FOR_PRIVACY> 0.285 389 0 - 1326 50 [vm-pageshortage] (daemon)
passd <REMOVED_FOR_PRIVACY> 0.211 623 0 - 2400 50 [vm-pageshortage] (daemon)
nfcd <REMOVED_FOR_PRIVACY> 0.024 192 0 - 634 50 [vm-pageshortage] (daemon)
biometrickitd <REMOVED_FOR_PRIVACY> 0.084 232 0 - 720 50 [vm-pageshortage] (daemon)
debugserver <REMOVED_FOR_PRIVACY> 1.059 212 0 - 703 50 [vm-pageshortage] (daemon)
MobileMail <REMOVED_FOR_PRIVACY> 0.471 1277 0 - 3744 50 [vm-pageshortage] (resume) (continuous)
lsd <REMOVED_FOR_PRIVACY> 0.612 361 0 - 1136 50 [vm-pageshortage] (daemon)
tccd <REMOVED_FOR_PRIVACY> 0.146 281 0 - 968 50 (daemon)
Tag Beta <REMOVED_FOR_PRIVACY> 19.967 97247 524 - 55588 100 (frontmost) (resume)
ptpd <REMOVED_FOR_PRIVACY> 1.226 786 0 - 2356 50 (daemon)
BTServer <REMOVED_FOR_PRIVACY> 0.303 483 0 - 1811 50 (daemon)
wifid <REMOVED_FOR_PRIVACY> 2.303 544 0 - 1786 50 (daemon)
lockdownd <REMOVED_FOR_PRIVACY> 1.481 279 0 - 1007 50 (daemon)
locationd <REMOVED_FOR_PRIVACY> 35.207 2182 0 - 5074 50 (daemon)
discoveryd <REMOVED_FOR_PRIVACY> 4.462 580 0 - 1232 100 (daemon)
mediaserverd <REMOVED_FOR_PRIVACY> 28.952 36002 0 - 5968 50 (daemon)
imagent <REMOVED_FOR_PRIVACY> 0.418 522 0 - 1531 50 (daemon)
iaptransportd <REMOVED_FOR_PRIVACY> 0.333 308 0 - 906 50 (daemon)
identityservices <REMOVED_FOR_PRIVACY> 1.016 724 0 - 2027 50 (daemon)
cfprefsd <REMOVED_FOR_PRIVACY> 1.371 400 0 - 798 50 (daemon)
syslogd <REMOVED_FOR_PRIVACY> 1.376 233 0 - 449 50 (daemon)
powerd <REMOVED_FOR_PRIVACY> 0.608 215 0 - 514 50 (daemon)
apsd <REMOVED_FOR_PRIVACY> 1.141 733 0 - 2076 50 (daemon)
networkd <REMOVED_FOR_PRIVACY> 1.341 650 0 - 1747 50 (daemon)
vmd <REMOVED_FOR_PRIVACY> 0.086 550 0 - 2441 50 (daemon)
dataaccessd <REMOVED_FOR_PRIVACY> 0.571 853 0 - 2657 50 (daemon)
sharingd <REMOVED_FOR_PRIVACY> 0.360 719 0 - 2260 50 (daemon)
searchd <REMOVED_FOR_PRIVACY> 0.402 874 0 - 2886 50 (daemon)
syslog_relay <REMOVED_FOR_PRIVACY> 0.246 113 0 - 237 50 (daemon)
geod <REMOVED_FOR_PRIVACY> 1.152 868 0 - 1847 50 (daemon)
SpringBoard <REMOVED_FOR_PRIVACY> 14.007 6886 0 - 28595 50
backboardd <REMOVED_FOR_PRIVACY> 63.774 13669 524 - 3673 50 (daemon)
UserEventAgent <REMOVED_FOR_PRIVACY> 17.578 916 0 - 2959 100 (daemon)
fseventsd <REMOVED_FOR_PRIVACY> 0.689 387 0 - 629 50 (daemon)
configd <REMOVED_FOR_PRIVACY> 0.729 530 0 - 1544 50 (daemon)
fairplayd.H2 <REMOVED_FOR_PRIVACY> 0.530 149 0 - 1052 50 (daemon)
assertiond <REMOVED_FOR_PRIVACY> 0.319 296 0 - 1012 50 (daemon)
distnoted <REMOVED_FOR_PRIVACY> 0.078 186 0 - 321 50 (daemon)
wirelessproxd <REMOVED_FOR_PRIVACY> 0.068 248 0 - 1065 50 (daemon)
aggregated <REMOVED_FOR_PRIVACY> 23.356 1192 0 - 2375 50 (daemon)
discoveryd_helpe <REMOVED_FOR_PRIVACY> 0.020 153 0 - 752 50 (daemon)
filecoordination <REMOVED_FOR_PRIVACY> 0.030 224 0 - 898 50 (daemon)
DTMobileIS <REMOVED_FOR_PRIVACY> 3.415 642 0 +25 2345 50 (daemon)
gputoolsd <REMOVED_FOR_PRIVACY> 0.285 948 0 - 2340 50 (daemon)
CommCenter <REMOVED_FOR_PRIVACY> 30.132 1626 0 - 5021 50 (daemon)
notifyd <REMOVED_FOR_PRIVACY> 2.168 347 0 - 413 50 (daemon)
ReportCrash <REMOVED_FOR_PRIVACY> 0.043 162 0 - 579 50 (daemon)
**End**
Now if I run the app in production mode, and attach Fabric, it does catch the exception properly:
Fatal Exception: NSInvalidArgumentException
-[TAGFeedJourneyTableViewCell previewImageView]: unrecognized selector sent to instance 0x14271e9d0
Thread : Fatal Exception: NSInvalidArgumentException
0 CoreFoundation 0x000000018349a59c __exceptionPreprocess + 132
1 libobjc.A.dylib 0x0000000193bec0e4 objc_exception_throw + 60
2 CoreFoundation 0x00000001834a1664 __methodDescriptionForSelector
3 CoreFoundation 0x000000018349e418 ___forwarding___ + 928
4 CoreFoundation 0x00000001833a2b6c _CF_forwarding_prep_0 + 92
5 Tag Beta 0x000000010012ca3c -[TAGFeedViewController tableView:didSelectRowAtIndexPath:] (TAGFeedViewController.m:603)
6 UIKit 0x0000000187d71390 -[UITableView _selectRowAtIndexPath:animated:scrollPosition:notifyDelegate:] + 1280
7 UIKit 0x0000000187e2ecdc -[UITableView _userSelectRowAtPendingSelectionIndexPath:] + 276
8 UIKit 0x0000000187ccb564 _applyBlockToCFArrayCopiedToStack + 356
9 UIKit 0x0000000187c3ce78 _afterCACommitHandler + 532
10 CoreFoundation 0x0000000183452a50 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32
11 CoreFoundation 0x000000018344f9dc __CFRunLoopDoObservers + 360
12 CoreFoundation 0x000000018344fdbc __CFRunLoopRun + 836
13 CoreFoundation 0x000000018337d0a4 CFRunLoopRunSpecific + 396
14 GraphicsServices 0x000000018c5175a4 GSEventRunModal + 168
15 UIKit 0x0000000187caeaa4 UIApplicationMain + 1488
16 Tag Beta 0x0000000100123f7c main (main.m:14)
17 libdyld.dylib 0x000000019425aa08 start + 4
While it's nice that Fabric is able to catch the issue, It'd be much more helpful if the debugger would catch the exception, so I could see values, stack traces, etc. Is there some setting that I just don't have on or is this an issue with Xcode?

How to analysis crash in Xcode6?

I found crash logs but I can't understand it. I tried from this:How to symbolicate crash log Xcode? but I got stuck in seme step because of I haven't use crash logs before.
Then I pull the log into a folder and then rename it because it contains chinese. And I tried follow this:http://www.juliusparishy.com/articles/symbolicating-ios-8-crash-logs. It didn't work also.
applematoMacBook-Air:crash apple$ DEVELOPER_DIR=`xcode-select -print-path` /Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash -o ./myapp-resymbolicated.crash ./MoneyPower.crash ./MoneyPower.app.dSYM
No crash report version in ./MoneyPower.crash at /Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash line 957.
Below is the log:
Incident Identifier: 13C0A1CB-2A40-496D-9DEF-DE85F72B84DE
CrashReporter Key: 52577145db78209ce4892c3e02465b6cfdc27b07
Hardware Model: iPhone5,4
OS Version: iPhone OS 8.1 (12B411)
Kernel Version: Darwin Kernel Version 14.0.0: Tue Oct 7 00:04:37 PDT 2014; root:xnu- 2783.3.13~4/RELEASE_ARM_S5L8950X
Date: 2014-11-26 16:57:11 +0800
Time since snapshot: 65 ms
Free pages: 2758
Active pages: 16544
Inactive pages: 7324
Speculative pages: 759
Throttled pages: 170016
Purgeable pages: 0
Wired pages: 33684
File-backed pages: 23985
Anonymous pages: 642
Compressions: 714623
Decompressions: 224424
Compressor Size: 29519
Uncompressed Pages in Compressor: 71670
Page Size: 4096
Largest process: kbd
Processes
Name | <UUID> | CPU Time| rpages| purgeable| recent_max| lifetime_max| fds | [reason] | (state)
AppleIDAuthAgent <e05ab3faa1243f3a900bac613820c3cd> 0.158 216 0 - 1257 50 (daemon) (idle)
cplogd <8e9ff218b5de30428df98e6d088cc6e7> 0.122 116 0 - 457 50 (daemon) (idle)
ind <35c1864a720232ea9b42aeb1df454ac6> 0.420 360 0 - 1221 50 (daemon) (idle)
MailCompositionS <fb46b62148b432bca350f4f0962e5baa> 2.197 4089 0 - 4928 50 (suspended)
QSInstaller <0ac1afc270963cba8e7ceacfbd88327b> 0.796 401 0 - 1983 50 (daemon) (idle)
Eudic_Pro_us <c767d73448bd38f381ef61e8059487f0> 59.839 5178 0 - 12422 50 (suspended)
CloudKeychainPro <bf2dc17596d9381bb02f0d3848253d29> 0.264 123 0 - 376 50 (daemon) (idle)
rocketd <379e73e3ec7b395296a9185cdb886153> 0.025 67 0 - 158 50 (daemon) (idle)
TingIPhone <fead8493c4d53af88370a65b90c8e13e> 2.015 2293 0 - 8027 50 (suspended)
MessagesNotifica <c21e17f099763f079a8909e53939cab6> 1.292 1609 0 - 3871 50 (suspended)
IMDPersistenceAg <8709c1b2c8ac37c38331026019487c4a> 1.948 444 0 - 4001 50 (daemon) (idle)
QZone <bad24b7fc2e33bc7ad0f9e35fe56fcdc> 53.227 8769 0 - 17340 100 (suspended)
adid <318b35f544ef30458c779f196840141b> 0.187 118 0 - 528 50 (daemon) (idle)
com.apple.facebo <0aa3451928ec326781922890b85b6376> 0.418 357 0 - 1324 50 (daemon) (idle)
MicroMessenger <5d0e48e5bb623e088cb372a1981d09cd> 31.297 6579 0 - 17535 100 (suspended)
coresymbolicatio <015dae53431f3f89a557a3f1ed748ba1> 0.103 82 0 - 187 50 (daemon) (idle)
diagnosticd <4593765ed9a833228e3f1515308b20fa> 0.443 121 0 - 254 50 (daemon) (idle)
AssetCacheLocato <6018ec37b6ad3dde8cb6d576b24b61e7> 0.473 235 0 - 849 50 (daemon) (idle)
com.apple.Stream <7b86d693c03f3149a1eba23d4d834eeb> 27.701 161 0 - 739 50 (daemon) (idle)
CallHistorySyncH <8ce6f70f70273829936775ea5cccdd12> 1.824 428 0 - 1225 50 (daemon) (idle)
fmfd <eb696bfb4c03371b83b1f4e89e446eeb> 1.826 422 0 - 1348 50 (daemon) (idle)
cloudphotod <2edd5622cf23381f8b22c92bc4b7a5c3> 6.342 617 0 - 1752 50 (daemon) (idle)
CacheDeleteGeoTi <bb953149b86a33cf8cc9226b9a74bd34> 0.196 146 0 - 562 50 (daemon) (idle)
mobileassetd <9a378084bd953954a1dd760d49fe7ede> 2.244 392 0 - 1792 50 (daemon) (idle)
geod <48710d774a42357ea97f9ad0a527ee5f> 4.365 635 0 - 1434 50 (daemon) (idle)
CacheDeleteAppCo <ee9139b8e1db3d3ba6d20a08a2cf08ac> 9.867 343 0 - 1226 50 (daemon) (idle)
CacheDeleteMobil <9cbeda33d15f3ee4af73660e85b8a738> 0.416 345 0 - 1489 50 (daemon) (idle)
CacheDeleteITune <9b54c0dcf93a3ddfa5f461436ea11664> 0.436 185 0 - 815 50 (daemon) (idle)
deleted <11e9a7b04fd335f5ac6e6f9e7922deff> 0.278 153 0 - 395 50 (daemon) (idle)
rtcreportingd <6a3478eeeec93f1797f432895851613a> 1.912 349 0 - 1129 50 (daemon) (idle)
SOHUVideo <8f2a763084bd33df91fb4d49bec096ce> 1039.212 5915 0 - 11547 100 (suspended)
vvebo <d76cf63bb0543b75b0f28e0ddc9bfe39> 439.540 13452 0 - 21578 200 (suspended)
pipelined <75d09f2b0b493a2d84a7043a5ce96360> 0.524 346 0 - 1858 50 (daemon) (idle)
librariand <72539244d3923f2d88cd15d9ce08c0bc> 0.601 243 0 - 859 50 (daemon) (idle)
com.apple.Stream <7b86d693c03f3149a1eba23d4d834eeb> 2.964 138 0 - 555 50 (daemon) (idle)
swcd <09d4cfa1662e3483b7da852d10cf45d5> 0.108 163 0 - 548 50 (daemon) (idle)
findmydeviced <2b7e318bab4e394ebd19a17ed0bf979d> 0.843 530 0 - 1786 50 (daemon) (idle)
aosnotifyd <16ece00586ec3ccab1fbdeb6d92aad1a> 1.598 495 0 - 1741 50 (daemon) (idle)
mobile_installat <9c9425ce271b3154b99d23e6e35240ef> 18.061 360 0 - 1213 50 (daemon) (idle)
streaming_zip_co <f8a43feeded33f30ae10bafafde0f052> 1.787 224 0 - 960 50 (daemon) (idle)
ContainerMetadat <24e851abc8b43f4093ea6d80c5a262ac> 29.550 488 0 - 1963 50 (daemon) (idle)
QSCenter <00f1d456fc583c9a8c2c57ecd3327f46> 238.360 1344 0 - 5462 200 (daemon) (idle)
familycircled <5fea61a5086f36348233dbf09e7adeee> 0.521 397 0 - 1481 50 (daemon) (idle)
AppStore <4443338ecbfe3b85afc4aba498d0cee8> 138.361 24407 0 - 25261 100 (suspended)
misd <8ea26d6e019d355795ff0cb117733f68> 0.258 159 0 - 747 50 (daemon) (idle)
Preferences <6bcd6b5ca2393131902eaee019857bd2> 27.053 5010 0 - 8509 50 (suspended)
MQQSecureJB <019bc764bc133db7baafa8a23c9445e7> 2.767 2271 0 - 7357 50 (suspended)
healthd <8495258d6e7b3ecfa21c18dc110b5402> 2.035 412 0 - 1099 50 (daemon) (idle)
BlueTool <79ec82b9ee3b31e7aee4ad348206fb07> 0.085 112 0 - 452 50 (daemon) (idle)
nehelper <d3804c7b0ccf3e1aa437061c7229cfb7> 1.580 217 0 - 843 50 (daemon) (idle)
BTLEServer <666685c2f90a3daa81bbe6520a811206> 0.326 273 0 - 1629 50 (daemon) (idle)
recentsd <04f80416cfc734cc8f3d6be6578467e0> 1.223 530 0 - 1583 50 (daemon) (idle)
medialibraryd <c80a6cacc2a334729705adb044e68c00> 9.229 563 0 - 1479 50 (daemon) (idle)
DTMobileIS <2a11eaaf903d38798629d3aecd137832> 302.687 502 0 - 1976 50 (daemon) (idle)
storebookkeeperd <046122091101309d968c43a2be97867c> 3.857 954 0 - 2460 50 (daemon) (idle)
itunesstored <651906971d0732e1942355da4bd91100> 110.578 2312 0 - 4746 100 (daemon) (idle)
itunescloudd <47bdc6fbccd6364480dbd1a2b3c7998d> 5.967 859 0 - 2625 50 (daemon) (idle)
CMFSyncAgent <268f03103f6032af8597e9fce57491b7> 0.152 143 0 - 498 50 (daemon) (idle)
WirelessRadioMan <40bc5fa762323e69a45d77854a53c4b2> 2.835 246 0 - 931 50 (daemon) (idle)
awdd <857efa30f8e23d2a9f25f53673af6ccb> 3.726 520 0 - 1124 50 (daemon) (idle)
passd <cea683659ba036a6a6f4b4f927160353> 30.283 679 0 - 2519 50 (daemon) (idle)
lsuseractivityd <9057065ea9cd37e2b905cfa169f62ef2> 3.083 384 0 - 1773 50 (daemon) (idle)
assetsd <55f3adbf8b1e3bf3b57471e01356417c> 38.141 1611 0 - 4256 50 (daemon) (idle)
webbookmarksd <3173c4f369ac382aa0e03975b1f6bc18> 26.917 564 0 - 1458 50 (daemon) (idle)
QSCharmer <b7f401ca48cd3c13a7e6a51328d183e8> 17.301 819 0 - 2277 100 (daemon) (idle)
profiled <4edd7c7d0a8631b58e739cfd13fc1865> 6.793 547 0 - 4488 50 (daemon) (idle)
GoodReader4 <dbe6961a764b347abbd609b6a223e6a7> 4.941 2008 0 - 5229 50 (suspended)
misagent <716ddd8b8fdf30a180872e0ac95b0c96> 1.161 129 0 - 526 50 (daemon) (idle)
nsurlstoraged <2216f383497435919d46cce44e2750dd> 23.292 1352 0 - 2999 200 (daemon) (idle)
networkd_privile <1c19249e1c9b3c1fae4bdb06671795d0> 0.986 92 0 - 261 50 (daemon) (idle)
routined <014344942eca323bb12d360e06c8d865> 13.554 511 0 - 2147 50 (daemon) (idle)
keybagd <30eb49ca086937f4a52413bee502a025> 4.062 110 0 - 328 50 (daemon) (idle)
assistantd <bbc6396ded9f32f89e4f3c3c62550786> 1.593 464 0 - 1793 50 (daemon) (idle)
pkd <d1ef96d5c84a3ec7bac8811f210d0d86> 8.705 335 0 - 886 50 (daemon) (idle)
revisiond <e89e877ac57239f59c0eed4ea5ecdff9> 1.206 267 0 - 569 50 (daemon) (idle)
com.baidu.ime.Ba <2518403a187230cc98feadecab0d1a63> 13.933 1975 0 - 7508 50 (suspended)
MobileGestaltHel <069f2f40d7ee3345adcc53637ae9ddf7> 3.302 173 0 - 597 50 (daemon) (idle)
sandboxd <a2a6b1bb1b3231af96cf6125c8f3e971> 0.722 144 0 - 620 50 (daemon) (idle)
DuetHeuristic-BM <003d26850d5e3dc7997d444a182c03ad> 5.482 327 0 - 1031 50 (daemon) (idle)
coreduetd <ac84ea2f95a43b9e911738284359db9b> 270.000 1370 0 - 2466 50 (daemon) (idle)
timed <3b91fa8cbe9131af958b430e85fa448d> 5.483 247 0 - 1002 50 (daemon) (idle)
accountsd <6185caa9f3793aef892ccf0ec3391ced> 80.564 1225 0 - 3233 50 (daemon) (idle)
calaccessd <9d8bb08b0f1d33a3878f213805bb7a14> 38.640 734 0 - 1799 50 (daemon) (idle)
mobactivationd <04a28566ff493e2b931706a59270fe8a> 3.647 207 0 - 814 50 (daemon) (idle)
securityd <d425cdb8afb13ccd836a8e0e706f33e0> 79.635 1033 0 - 2432 50 (daemon) (idle)
containermanager <7d4e114c087f3566bb0fe4be34f0d315> 18.437 336 0 - 880 50 (daemon) (idle)
lockbot <ba949fe90d403a95abc20b3780e5dfab> 1.286 176 0 - 676 50 (daemon) (idle)
nsurlsessiond <7676f54e86233a47b73b7a707f5903e1> 181.227 870 0 - 2165 50 (daemon)
gamed <424e1a60719830b5b4d799ed01954180> 13.246 979 0 - 3083 50 (daemon)
Music <8c00f2c612d631bca8c94cb80079f45e> 10.284 1793 0 - 4795 50 (background)
absd <84d31e794d8b345bbdc06c990e18922d> 0.218 97 0 - 386 50 (daemon)
bird <1c0b6b6474ab3b0686ca1fbcd547245d> 37.934 1711 0 - 3450 50 (daemon)
cloudd <309d7860b8db331a978c2c814f0c8332> 108.050 1442 0 - 3031 50 (daemon)
notification_pro <6ceb017d382139b19f49e20e461dbee2> 2.658 189 0 - 368 50 (daemon)
afcd <9725b438ad9d3e259a2e628f6fffb449> 0.265 139 0 - 294 50 (daemon)
mobile_assertion <de75b4d90658347b8873a4938aa02122> 0.117 119 0 - 340 50 (daemon)
MobileMail <7285623db1753882bca1a7983ba6a479> 10.635 1433 0 - 3853 50 (resume) (continuous)
MobileSMS <e36c461c698438948d233a751658dc8d> 12.979 2795 0 - 7633 50 (continuous)
lsd <b4acbcce51273ae699bcdaba19e8e6d2> 31.574 615 0 - 1453 50 (daemon)
tccd <046fa98e4bfd30789c10447b04d67a59> 11.467 307 0 - 904 50 (daemon)
kbd <91b2e4707a4233c598ba51ab8d765fc6> 89.667 31706 0 - 32409 50 [highwater] (daemon)
InCallService <d83952575cf631baac492f39dd5bd2c5> 6.497 1132 0 - 3379 50 (resume) (continuous)
FaceTime <d0e139af986b34d08c219f8057708b23> 6.179 1517 0 - 4518 50 (continuous)
MoneyPower <c72bab945b653b7cb101e44f88e4d1ff> 1.352 1726 0 - 4493 50 (frontmost) (resume)
ptpd <1b2175128a1e3880bc9f2c8835df0a84> 0.899 871 0 - 1789 50 (daemon)
BTServer <8138d14a265f3445a288e8a8fefc4f88> 4.663 590 0 - 2360 50 (daemon)
amfid <0162233147ee3429bd1e344fde40d8d7> 0.023 76 0 - 173 25 (daemon) (idle)
discoveryd <8aed6e4ba09f3761b12796bc1ef045d7> 104.080 900 0 - 1818 100 (daemon)
wifid <07a9fb4965473001880a56f4e06e18c8> 52.415 538 0 - 1545 50 (daemon)
lockdownd <0d55399f17293f74af1f04987c0c7f30> 67.031 401 0 - 1410 50 (daemon)
imagent <c0ef36357e8c3658b3876bfb5dd25996> 12.568 805 0 - 2623 50 (daemon)
identityservices <d4c29d99664e34bdb82e046c600271c1> 18.707 713 0 - 2183 50 (daemon)
syslogd <d9a9a4a03dea32d8b041d5ac197c8f98> 46.064 344 0 - 445 50 (daemon)
iaptransportd <4d6f8290631a33928f87ddf2cc87ac41> 8.753 318 0 - 821 50 (daemon)
mediaserverd <88151824720a3e649461c81e73cd4b5e> 2173.885 6721 0 - 32721 50 (daemon)
locationd <48b400c62e4c394299e6124935dedf08> 644.756 1671 0 - 4824 100 (daemon)
powerd <7d9c31f8a70431a884047612f65e1c02> 32.568 250 0 - 515 50 (daemon)
apsd <4b5d193860a43c96af1313e8128ede6d> 37.354 638 0 - 1869 50 (daemon)
networkd <33404341f70c3231a60f0b40bbe968d7> 141.706 771 0 - 1791 50 (daemon)
dataaccessd <189b8330160434f8b5b0ebee43290697> 10.081 862 0 - 2432 50 (daemon)
vmd <9d324b2ab0b03b93bdc165c1cc27e9d1> 0.442 266 0 - 859 50 (daemon)
sharingd <79def39dbceb3b9190742c7bbcd0ad7c> 12.374 726 0 - 2495 50 (daemon)
mediaremoted <4f8bff5ccf923657b17f72dd2b002f1c> 67.387 316 0 - 1282 50 (daemon)
SCHelper <196af7bc7205305082beae63d0143af9> 2.662 116 0 - 318 50 (daemon)
atc <a4bf959671773746b408f825460ac0aa> 22.413 1425 0 - 3760 50 (daemon)
syslog_relay <1ce514e7b1cb39218a1bb4afb37a2a47> 1.200 111 0 - 275 50 (daemon)
installd <acf9113478133a9d8ec90eb3233a0d4e> 57.496 488 0 - 2140 50 (daemon)
SpringBoard <a4cf2abe291e3c9082c58d38b9cf0356> 709.123 10136 0 - 27546 100
backboardd <d35acdc51c0e39da896d8760d30f72ff> 2534.389 7304 0 - 6100 50 (daemon)
fairplayd.H2 <30cc265b9aa13511a461149ecf326b4e> 22.379 236 0 - 1404 50 (daemon)
configd <287504687f22353fb98df72ce0445f85> 87.054 478 0 - 1256 50 (daemon)
fseventsd <533f5fbbb6683b86bbce8649a74eb688> 30.630 529 0 - 1031 50 (daemon)
UserEventAgent <f2ea7b62ae4e38ffa9c7b5a93c5dc6dc> 328.253 880 0 - 2494 200 (daemon)
assertiond <36cbbe6205723972844d2a3a61e5c31d> 26.361 356 0 - 1013 50 (daemon)
distnoted <11db066ae1fa32dfb4755accfe8d6f32> 14.823 237 0 - 472 50 (daemon)
wirelessproxd <b480891c9ec93154bbe2107ea7e96abf> 2.202 210 0 - 912 50 (daemon)
discoveryd_helpe <099460d32af7337d95d6362993ea1406> 0.285 140 0 - 588 50 (daemon)
filecoordination <6d9f3fb4ccf630eb8ccba96e51cb1bbe> 4.758 321 0 - 880 100 (daemon)
aggregated <04c00c9ea92a3b40a1221b7b622e9d1c> 1171.560 1131 0 - 2725 50 (daemon)
callservicesd <ae5546b18df13320a52bcf46c9dc1a65> 2.751 606 0 - 1597 50 (daemon)
ubd <89ad1cd20dbb32eab266903379256adb> 0.238 214 0 - 770 50 (daemon)
touchsetupd <a08d390378a433979da5ce42197b1189> 0.759 193 0 - 731 50 (daemon)
gputoolsd <956b542f7d263b38a6384d8aa8e5760a> 0.289 735 0 - 2089 50 (daemon)
MobileStorageMou <605984d05a1c30ada9bb32338673ea00> 0.072 129 0 - 375 50 (daemon)
cfprefsd <1a4938a6a60e3d7ba5e940f96033c6c8> 33.537 455 0 - 897 50 (daemon)
CommCenter <552a7fd4f67e32ceb6fa3f1664e754de> 622.642 1822 0 - 5535 50 (daemon)
notifyd <1454674148363528952383ed99eaee44> 86.372 369 0 - 424 50 (daemon)
ReportCrash <e365c04793583967bc173ce46616ab70> 0.120 131 0 - 532 50 (daemon)
**End**
I don't know why it crash. I even have no idea whether it is symbolized.
I will be grateful for your generous help, thanks!
This is not a crash report but LowMemory report. There's nothing to symbolicate in it, just the list of processes with how much memory / resources each was using and which ones were killed. There should be a line with your app name on it and the resources it was using. You should check that e.g. the memory in use is consistent with what you expect.
In your case, it seems that kbd got killed, not your app, so if your app crashed I think you are looking at the wrong file.
Steps to analyze crash report from apple:
Copy the release .app file which was pushed to the appstore, the .dSYM file that was created at the time of release and the crash report receive from APPLE into a FOLDER.
OPEN terminal application and go to the folder created above (using cd command)
Run atos -arch armv7 -o APPNAME.app/APPNAME MEMORY_LOCATION_OF_CRASH. The memory location should be the one at which the app crashed as per the report.
Ex: atos -arch armv7 -o 'APPNAME.app'/'APPNAME' 0x0003b508
This would show you the exact line, method name which resulted in crash.
Ex: [classname functionName:]; -510
Symbolicating IPA
if we use IPA for symbolicating - just rename the extention .ipa with .zip , extract it then we can get a Payload Folder which contain app. In this case we don't need .dSYM file.
Note
This can only work if the app binary does not have symbols stripped. By default release builds stripped the symbols. We can change it in project build settings "Strip Debug Symbols During Copy" to NO.

Received memory warning: Why does my app crash with many simple animations?

I have in my application many animations (like a 70, 10 in 7 viewcontrollers) with the same type of voids and functions, and when I run on my device or in the simulator, the application crashes.
How can I improve these animations using threads or dispatch, or the problem is the memory?
How could be done this, in another questions & tutorials, using the same method's for the animations & are very simple, the code is like this and I repeat for any animation that I need in my App:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
[self CargarSonidos];
[self getArrayEffectImagen1];
self.imgImagen1.animationImages = self.arrayEffectImagen1;
self.imgImagen1.animationDuration = 1.0f;
[sonido play];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)getArrayEffectImagen1
{
NSMutableArray *arrayEfecto = [[NSMutableArray alloc] init];
for (int i=0; i<14; i++) {
UIImage *imagen = [UIImage imageNamed:[NSString stringWithFormat:#"Imagen%d.png",i]];
[arrayEfecto addObject:imagen];
}
self.arrayEffectImagen1 = [NSArray arrayWithArray:arrayEfecto];
}
-(void)CargarSonidos
{
NSURL *Imagen1Url = [NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:#"PrimerSonido"ofType:#"MP3"]];
NSError *error;
Sonido = [[AVAudioPlayer alloc]initWithContentsOfURL:Imagen1Url error:&error];
if (error)
{
NSLog(#"Error in audioPlayer: %#",[error localizedDescription]);
}
else
{
Sonido.delegate = self;
[Sonido prepareToPlay];
}
}
-(IBAction)Animacion1
{
[Sonido play];
[self.imgImagen1 setAnimationRepeatCount:1];
[self.imgImagen1 startAnimating];
}
-(void)audioPlayerDidFinishPlaying:
(AVAudioPlayer *)player successfully:(BOOL)flag
{
}
-(void)audioPlayerDecodeErrorDidOccur:
(AVAudioPlayer *)player error:(NSError *)error
{
}
-(void)audioPlayerBeginInterruption:(AVAudioPlayer *)player
{
}
-(void)audioPlayerEndInterruption:(AVAudioPlayer *)player
{
}
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[Sonido stop];
}
-(IBAction)TapOne:(UITapGestureRecognizer *)recognizer
{
[self Animacion1];
}
I'm using Xcode 4.6 & the app is for iOS 5.0. Im using ARC with storyboard & modal or push segue, I did try in a simple way create this app, So if you know something or help me how can I fix or improve this code in a better way with threads or dispatch maybe?
AND o yes, well the Crash LOG is:
Incident Identifier: 3B38AB75-8A16-460E-BC07-55F5A0D4D2E6
CrashReporter Key: 3c4dd8277fec52e8c14d73ab348b62650bbf5226
Hardware Model: iPhone3,1
OS Version: iPhone OS 6.1.3 (10B329)
Kernel Version: Darwin Kernel Version 13.0.0: Wed Feb 13 21:36:52 PST 2013; root:xnu-2107.7.55.2.2~1/RELEASE_ARM_S5L8930X
Date: 2013-06-20 10:18:17 -0400
Time since snapshot: 102 ms
Free pages: 1037
Active pages: 3050
Inactive pages: 2264
Throttled pages: 103507
Purgeable pages: 0
Wired pages: 19150
Largest process: Simple Juego Prototipo
Processes
Name <UUID> rpages recent_max [reason] (state)
timed <129ae7acc9bc3209a60ac42d49b0d89f> 290 379 [vm] (daemon) (idle)
Messenger <ee1787e4954037c4a692b76e4d7d4b6e> 1496 2138 [vm] (resume)
MobileSMS <3d75b813ead134998225651ca662356a> 1347 1347 [vm] (background)
MobileMail <e07ca7a7280736c7bf301451f89d1c02> 978 978 [vm] (resume) (continuous)
MobilePhone <51866c9bc9f93c9d8526e8acf9efc64c> 2181 2181 [vm] (continuous)
tccd <2778744d99a530c9a7d5e57a19b60008> 189 189 [vm] (daemon)
kbd <f7341c9a161a39acb5bc18ea47d6ebb7> 499 499 [vm] (daemon)
librariand <5c2a34477ddf3501aed0ec2d25caa09e> 208 208 [vm] (daemon)
Juego Prototipo <63bf4a5a839d3b3fa91700566bff69b3> 88101 88101 [vm] (audio) (frontmost) (resume)
ptpd <096297a7a40f318290a972274cc44d87> 735 735 (daemon)
wifid <72eda25ccdd737a79d6cd172e9bf99a5> 336 336 (daemon)
mediaserverd <af72564bf8713fb8b16ee64c5ee85568> 1004 1004 (daemon)
dataaccessd <abc7f74d5d683d4c9a04e7ade5b1126b> 1237 1237 (daemon)
locationd <137100f254373daeb894f665c413f8b0> 655 655 (daemon)
iaptransportd <9b3cf56b4db13761bbd8ac2e0ff099be> 223 223 (daemon)
syslogd <da215e2d3de133bf8f52590727b9bdfe> 146 146 (daemon)
SpringBoard <bd1d77d154ef3dffbb53d89337c8a08f> 3299 3299
backboardd <e1dc74434e0e3938b17ff0f7ad85d138> 3944 3944 (daemon)
configd <b6a4d70640b63e8f82e0e9f3d6ee2bb9> 449 449 (daemon)
lockdownd <a123aa04ddf83a5fae8e5bc08f0b5771> 248 248 (daemon)
fairplayd.N90 <178af330594b392eab2c7b4499001e75> 143 143 (daemon)
powerd <63673a83ac9c3cf98fdc75df8ba70fd0> 143 143 (daemon)
UserEventAgent <7ee3410c25e4372d84e93318fe42696b> 471 471 (daemon)
debugserver <befb5a346ad43ac1be6790ab46eaceff> 0 0 (daemon)
springboardservi <438ae856a1c039a197e6987a99a8b9b6> 0 0 (daemon)
syncdefaultsd <a18b8aeea66e3ebb9ab0d54e55c1b9d1> 195 195 (daemon)
afcd <3bd960d39c9f3972a10923db0e687b4a> 147 147 (daemon)
syslog_relay <ee47daae952636649230d38b3dc5c2e0> 0 0 (daemon)
notification_pro <08df322fbe7739199f78852a511169ef> 129 129 (daemon)
afcd <3bd960d39c9f3972a10923db0e687b4a> 139 139 (daemon)
ubd <da941d158131359ab82559fdf8b99cb7> 347 347 (daemon)
CVMServer <0944339d86d03b94bf9deda6eecf5642> 72 72 (daemon)
filecoordination <28ca39773e933ed2aa92c117c661d056> 129 129 (daemon)
distnoted <699b8253736233b29180419f139e8c01> 106 106 (daemon)
apsd <5be27dc5ea5234319bc4b47380e42174> 304 304 (daemon)
aggregated <c5a375854c3c31d59548ab53ea86d194> 88 88 (daemon)
networkd <49064febbe553338bd98051399022da4> 181 181 (daemon)
fseventsd <3ea853cb95de3aa48972aa42637af69a> 295 295 (daemon)
BTServer <af0150d5085e326598edff072a23d146> 436 436 (daemon)
imagent <2b64c6111aa63b179a15afd6a76a6696> 420 420 (daemon)
mDNSResponder <1e651badfb7033a68a73a667ec480a08> 210 210 (daemon)
CommCenterClassi <19c784a3f93a35208de01bd47343facc> 637 637 (daemon)
notifyd <67a17b0c297e3785a9e09b8e72f3636a> 186 186 (daemon)
ReportCrash <68e323272a9d37c58ba4cdf1279764c4> 242 352 (daemon)
**End**
There are a few possible issues at play here:
One issue is that imageNamed will cache the images. You might consider using imageWithContentsOfFile instead. As the imageNamed documentation says:
If you have an image file that will only be displayed once and wish to ensure that it does not get added to the system’s cache, you should instead create your image using imageWithContentsOfFile:. This will keep your single-use image out of the system image cache, potentially improving the memory use characteristics of your app.
Thus, if you use an image for a one-time (or infrequently used) animation, consider using imageWithContentsOfFile rather than imageNamed.
When the animation is done (which can be detected by checking isAnimating property, such as in a CADisplayLink), you can nil the animationImages property of the UIImageView, which will release the strong reference to those images.
Are the images a size appropriate for the UIImageView? If you have an image whose size (measured in pixels, not by file size) exceeds the size of the image view, iOS will gracefully resize the image in the view (depending upon your contentMode), but it will still store the uncompressed image in memory (usually taking up four bytes per pixel). Don't look at the size of the PNG/JPG file to consider the memory implications (because those are compressed file formats that are uncompressed in memory when you use them). Look at the dimensions of the underlying UIImage.
If the image dimensions exceed what is needed by the image view, you might want to resize them. This can, depending upon the size of your images, have a dramatic impact on the memory consumption. There are many image resizing algorithms out there (such as this).

parsing using awk

how to parse a file based on data from another file using awk.
i made a script:
BEGIN{ FS="\t" ; OFS="\t"
while((getline<"headfpkm")>0) {
++a
id[a]=$1
fpkm[a]=$2
print id[a],fpkm[a]
}
lastid=id[a]
print lastid
close("headfpkm")
}
/$lastid/{
print $2,$3,$5,$7,$8,$14,fpkm[a]
a--
lastid=id[a]
}
END{ print "total lines=",FNR,"\n\nfile 1 index: ",a}
when i run it :
/$ awk -f testawk.awk file2
it runs the BEGIN section properly but doesnt give any output.
NM_000014 5.04503
NM_000015 0.586677
NM_000016 1.138332278
NM_000017 0.64386
NM_000018 3.61746
NM_000019 2.8793
NM_000020 10.846
NM_000021 0.685098
NM_000022 46388.6
NM_000026 0.257471
NM_000026
total lines= 10
file 1 index: 10
Is anything wrong with the searching section??
file 2 looks like this:
34 ACADM NM_000016 9606 hsa-miR-3148 3 80 87 0.003 -0.016 -0.094 0.082 0.112 -0.160 97
34 ACADM NM_000016 9606 hsa-miR-3163 1 623 629 0.001 -0.022 -0.020 0.065 0.125 -0.01 57
35 ACADS NM_000017 9606 hsa-miR-3921 3 68 75 0.013 0.192 -0.097 0.031 -0.039 -0.147 82
35 ACADS NM_000017 9606 hsa-miR-4303 2 67 73 0.012 0.150 -0.052 0.013 -0.039 -0.036 31
35 ACADS NM_000017 9606 hsa-miR-4653-5p 3 68 75 0.003 0.192 -0.097 0.031 -0.039 -0.157 84
37 ACADVL NM_000018 9606 hsa-miR-124 2 31 37 0.003 0.023 -0.057 0.012 -0.032 -0.171 76
37 ACADVL NM_000018 9606 hsa-miR-1827 2 135 141 -0.007 -0.043 -0.058 0.039 -0.069 -0.258 91
37 ACADVL NM_000018 9606 hsa-miR-2682 2 134 140 0.003 -0.014 -0.058 0.004 -0.047 -0.232 87
37 ACADVL NM_000018 9606 hsa-miR-449c 2 134 140 -0.035 -0.014 -0.058 0.004 -0.047 -0.270 92
37 ACADVL NM_000018 9606 hsa-miR-506 2 31 37 -0.016 0.023 -0.057 0.012 -0.032 -0.190 80
This is going to be a bit of guess, because I'm not 100% sure as to what you're trying to accomplish. The better way to solve your problem, would be to do something like this:
BEGIN {
FS=OFS="\t"
}
FNR==NR {
c++
a[$1]=$2
next
}
$3 in a {
print $2,$3,$5,$7,$8,$14,a[$3]
}
END {
printf "total lines=%s\n\nfile 1 index: %s\n", FNR, c
}
Run like:
awk -f script.awk headfpkm file2
Results:
ACADM NM_000016 hsa-miR-3148 80 87 -0.160 1.138332278
ACADM NM_000016 hsa-miR-3163 623 629 -0.01 1.138332278
ACADS NM_000017 hsa-miR-3921 68 75 -0.147 0.64386
ACADS NM_000017 hsa-miR-4303 67 73 -0.036 0.64386
ACADS NM_000017 hsa-miR-4653-5p 68 75 -0.157 0.64386
ACADVL NM_000018 hsa-miR-124 31 37 -0.171 3.61746
ACADVL NM_000018 hsa-miR-1827 135 141 -0.258 3.61746
ACADVL NM_000018 hsa-miR-2682 134 140 -0.232 3.61746
ACADVL NM_000018 hsa-miR-449c 134 140 -0.270 3.61746
ACADVL NM_000018 hsa-miR-506 31 37 -0.190 3.61746
total lines=10
file 1 index: 10

Resources