GithubHelp home page GithubHelp logo

instabug / instabug-ios Goto Github PK

View Code? Open in Web Editor NEW
287.0 61.0 67.0 3.79 GB

In-app feedback and bug reporting tool for apps.

Home Page: https://instabug.com/

License: Other

Ruby 100.00%
instabug bug-reporting bug-reporter ios-sdk

instabug-ios's People

Contributors

ahmedanwer avatar ahmedsalah196 avatar alyakan avatar cisclub avatar figo0o avatar hassaneldesouky avatar heshammegid avatar instabug-ios-ci avatar keith avatar kerollosnabil avatar kmohamed avatar litso avatar mzsoliman avatar yousefhamza avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

instabug-ios's Issues

Screenshot cannot be disabled

I recently upgraded from Instabug 4.1 to 5.1 and there is now a screenshot embedded in the feedback message. The screenshot is pointless for our use case because, in our app, Instabug's "Suggest an Improvement" dialog is always triggered by an explicit tap of a "Send Feedback" button in our settings screen -- so the screenshot is always the same: our settings screen. I looked in the API for some way to disable the screenshot functionality, but I can't find one.

Crash in IBGLog

Hi guys

I got many crash reports from user in my online app.
The stack like follow, do you guys have any idea?

Thread 7 Crashed:
0 libsystem_kernel.dylib 0x38311df0 __pthread_kill + 8
1 libsystem_c.dylib 0x382ad909 abort + 77
2 libsystem_malloc.dylib 0x383423af szone_error + 335
3 libsystem_malloc.dylib 0x3833e0e3 free_large + 171
4 CoreFoundation 0x2932b79f __CFStringDeallocate + 135
5 CoreFoundation 0x29256de3 CFRelease + 495
6 MyApp 0x00991d31 -IBGSession addLog:
7 MyApp 0x0096a245 IBGLog (Instabug.m:56)

Bug in IBGPushNotificationsManager

Unfortunately after update to 5.0.x appeared crash on receiving push notification:

-[AppDelegate application:didReceiveRemoteNotification:]
-[IBGPushNotificationsManager handleSwizzledRemoteNotificationReceived:notification:completionHandler:originalMethodImplementaion:selector:]
-[IBGPushNotificationsManager didReceiveNotificationSwizzler]_block_invoke
-[IBGMethodSwizzler application:didReceiveRemoteNotification:]

Whats strange, in app delegate self is IBGPushNotificationsManager.

Latest Version pod install error

Receiving the following afte your last merge:

Specs satisfying theInstabug (from https://github.com/Instabug/Instabug-iOS, branch no_build_script)dependency were found, but they required a higher minimum deployment target.

Podfile has this for platform: platform :ios, '8.0'

Instabug make the app crash when we allow it to share the location info

If we provide permission to share the location info on "Report a bug", app crashes after tapping on Send button. And I can see the below exception on console.

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** setObjectForKey: object cannot be nil (key: city)'.

But if we denied the permission of location info(on permission alert or in code), it works perfect.

This is a sample bug. Reported by Instabug.

Number: 3

URL: https://instabug.com/applications/instabug-ios/issues/3

Type: bug

Status: New

Email: [email protected]

Comment:

This is a sample bug. Reported by Instabug.

Location: San Francisco, USA

Device: iPhone 4 / iOS 7.0

Memory: Used: 3084.42 MB, Free: 1000.87 MB

Storage: Used: 25.15 GB, Free: 5.32 GB

Connectivity: Carrier: Verizon, WiFi: Home WiFi

Battery: 80 , Unplugged

App Version: 1.3 (1.3)

Duration: 00:00:08

User Data: You can attach extra data items with each bug reported.

 userid = 721899; 
 username = jack.edward;

Console Log:

This is your app log at the time of reporting the bug. 

 2014-03-25 16:19:00.111 AppDemo[69166:60b] ViewLoaded 
 2014-03-25 16:19:00.113 AppDemo[69166:60b] Request completed 
 2014-03-25 16:19:00.123 AppDemo[69166:60b] User isnt logged in 
 2014-03-25 16:19:00.213 AppDemo[69166:60b] Login view

Instabug Log:


User Steps:

These are the steps that the user did before sending the bug, all the user touches and interactions are recorded here. 

 2014-03-25 16:19:00.010 - Application: DidBecomeActive 
 2014-03-25 16:19:00.213 - Top View: LoginViewController 
 2014-03-25 16:19:40.817 - Touch: _usernameTextField (UITextField) in LoginViewController 
 2014-03-25 16:19:42.128 - Touch: (UIKeyboardLayoutStar) in LoginViewController 
 2014-03-25 16:19:48.828 - Touch: _passwordTextField (UITextField) in LoginViewController 
 2014-03-25 16:19:49.023 - Touch: (UIKeyboardLayoutStar) in LoginViewController 
 2014-03-25 16:19:50.011 - Touch: _loginButton (UIButton) in LoginViewController 
 2014-03-25 16:19:50.111 - Top View: HomeViewController 
 2014-03-25 16:20:19.322 - Touch: _friendsListButton (UIButton) in HomeViewController 
 2014-03-25 16:20:20.725 - Top View: FriendsListViewController 
 2014-03-25 16:21:10.510 - Shake in: FriendsListViewController

Screenshot

Current View: FriendsListViewController

Cocoapod - Could not load NIB in bundle

Seem to be having an issue using Instabug through cocoapods where upon shaking the device to open the feedback screen I get.
Could not load NIB in bundle: 'NSBundle <***.app> (loaded)' with name 'IBGActionSheetVC-Landscape-iPad'
-[IBGFeedbackWindow presentViewController:] + 178
-[IBGFeedbackController showPrompt] + 300

iPad 4 (WiFi) / iOS 7.1.2

Enums are not Swift-friendly

The enums in IBGEnums.h are not Swift-friendly. They force you to type out the entire enum, like this:

Instabug.invokeWithInvocationMode(IBGInvocationModeFeedbackSender)

while in Swift this is normally reduced to:

Instabug.invokeWithInvocationMode(.FeedbackSender)

You can enable this syntax sugar by adopting the NS_ENUM macro. For example:

typedef NS_ENUM(NSInteger, IBGInvocationMode) {
    IBGInvocationModeNA,
    IBGInvocationModeBugReporter,
    IBGInvocationModeFeedbackSender
};

I'd submit a pull request, but there is no source code to modify. Could you please apply this change to all enums in your upstream code? Thanks!

Main thread stalls during initialization of Instabug after launching after a crash

pod 'Instabug' (updated to 4.1.10)
iOS Base SDK - 9.2
Target iOS 9.2
After launching app after a crash, the app freezes every time we try to launch it. Please see the attached screenshots showing backtrace taken by pausing the debugger when the app was frozen. It seems on the main thread it is waiting in [IBGReachability init] while on the com.IBG.ServerQueue thread it is waiting in [IBGServersQueue init].

instabug-main-thread

intabug-ibg-serial-thread

Bitcode support?

Hello,

I'm currently using v4.1.6 (https://github.com/Instabug/Instabug-iOS/releases/tag/4.1.6), installed via cocoapods, which says that there's Bitcode support. However when archiving I got this error:

ld: warning: full bitcode bundle could not be generated because '/Users/Est/Documents/Works/cheese/Pods/Instabug/Instabug.framework/Instabug(IBGLineLimitedString.o)' was built only with bitcode marker. The library must be generated from Xcode archive build with bitcode enabled (Xcode setting ENABLE_BITCODE)

Am I doing something wrong? Or is it true that Instabug doesn't have support for Bitcode yet?

Upload DSYM Script

The Instabug_dsym_upload.sh script is searching for the first occurrence of either Instabug startWithToken:@\"[0-9a-zA-Z]*\" or Instabug.startWithToken:@\"[0-9a-zA-Z]*\" in the source code.

We are switching between a staging and production environment which means we have to have the same line of code twice and it will still only use the first one. It also doesn't allow us to use a constant or variable to switch tokens.

Is there a better way to search for this API token? Or some other place we can store the token that can consistently and reliably select the correct token for the correct environment?

CLANG_CXX_LANGUAGE_STANDARD merge problem with Realm

When I want to install Instabug and Realm in the same project, I'm getting the warning:
[!] Can't merge user_target_xcconfig for pod targets: ["Instabug", "Realm", "Headers"]. Singular build setting CLANG_CXX_LANGUAGE_STANDARD has different values.

Crash when Invoking (5.0.2)

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </var/mobile/Containers/Bundle/Application/B405647F-25AF-4CA8-A430-A2FF2EB6448A/Orchestra.app> (loaded)' with name 'IBGActionSheetVC-iPhone''

Installed through cocoapods

Network check in upload script should be done after the platform check

Checking the internet connection can take up to 10 seconds, and if we are going to skip the upload anyway (because it's a simulator build), then there is no reason to have the delay.

Just need to move this code:

#Check internet connection
if [ ! "`ping -c 1 instabug.com`" ]; then
  exit 0
fi

To be after this code, instead of before it:

# Check for simulator builds
if [ "$EFFECTIVE_PLATFORM_NAME" == "-iphonesimulator" ]; then
  if [ "${SKIP_SIMULATOR_BUILDS}" ] && [ "${SKIP_SIMULATOR_BUILDS}" -eq 1 ]; then
    echo "Instabug: Skipping simulator build"
    exit 0
  fi
fi

Instabug Crashes on shake.

Hello,
We have updated our apps to new instabug sdk and right now instabug crashes when we shake the phone. I have tried official version as well as the hotfix mentioned here: #27
same results.

Please check the log and screenshot for details.

Regards
Halil

log:
2015-10-06 15:33:36.931 voodle[2290:540925] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </var/mobile/Containers/Bundle/Application/862D7E31-A913-4041-9C22-40DBF6C0B6BC/voodle.app/Instabug.bundle> (not yet loaded)' with name 'InstabugActionSheetViewController-iPhone''
*** First throw call stack:
(0x2900d137 0x37497c77 0x2900d07d 0x2ca3e429 0x2c955b47 0x2c7898ad 0x2c66d539 0x2c66d4bd 0x2c6735e7 0x2c6daeab 0x34d883 0x33531d 0x335225 0x334f63 0x3374ad 0x34cb6f 0x34ce79 0x34ca99 0x29d36439 0x29ca10a1 0x29c93b0d 0x29d38d93 0xb6d187 0xb70e9d 0x28fd2889 0x28fd0fa9 0x28f1c9a1 0x28f1c7b3 0x308de1a9 0x2c6cd635 0x1efa59 0x37a65aaf)
libc++abi.dylib: terminating with uncaught exception of type NSException
warning: could not load any Objective-C class information from the dyld shared cache. This will significantly reduce the quality of type information available.

instabugcrash

pod install failing when using aggregate targets in xcode

when having an aggregate target in xcode, in this case the test aggregate target, pod install fails with:

-> Installing Instabug (3.23)
 > Git download
 > Git download
     $ /usr/local/bin/git clone https://github.com/Instabug/Instabug-iOS.git /Users/tex/Projects/Expend/workspace/temp/Pods/Instabug --single-branch --depth 1 --branch 3.23
     Cloning into '/Users/tex/Projects/Expend/workspace/temp/Pods/Instabug'...
     Note: checking out 'da8133102d75aa08fcd6b379c9e5376deb950e23'.

     You are in 'detached HEAD' state. You can look around, make experimental
     changes and commit them, and you can discard any commits you make in this
     state without impacting any branches by performing another checkout.

     If you want to create a new branch to retain commits you create, you may
     do so (now or later) by using -b with the checkout command again. Example:

       git checkout -b new_branch_name

 > Running prepare command
   $ /bin/bash  set -e ruby add_instabug_build_script.rb
   add_instabug_build_script.rb:24:in `block in <main>': undefined method `product_type' for <PBXAggregateTarget name=`test` UUID=`CFAAE2081A9B86D1002520B1`>:Xcodeproj::Project::Object::PBXAggregateTarget (NoMethodError)
    from add_instabug_build_script.rb:23:in `each'
    from add_instabug_build_script.rb:23:in `<main>'
[!] /bin/bash
set -e
ruby add_instabug_build_script.rb

add_instabug_build_script.rb:24:in `block in <main>': undefined method `product_type' for <PBXAggregateTarget name=`test` UUID=`CFAAE2081A9B86D1002520B1`>:Xcodeproj::Project::Object::PBXAggregateTarget (NoMethodError)

    from add_instabug_build_script.rb:23:in `each'

    from add_instabug_build_script.rb:23:in `<main>'

Upload script uses ping, which is not always supported

In your upload script you are using ping to determine if the API is available:

https://github.com/Instabug/Instabug-iOS/blob/master/Instabug.bundle/Instabug_dsym_upload.sh#L46

Ping is not supported on all networks, including mine, so I had to fork the code and use a different approach. I submitted a pull request that changes this check to use curl instead of ping:

#34

This approach will also be a better indicator of whether the API service is actually running rather than ping, which is doing a check at a lower level on the network stack.

Unable to install with Cocoapods

Hi Guys,

I tried to install your SDK with Cocoapods. We are using Swift 1.2 at the moment.
Just did pod 'Instabug' and it installed it correctly.

When I try to import the framework in the AppDelegate, it says "No such module 'Instabug'"

Digging a bit further, in the Pod project, there is no target Instabug like the other pod I'm using.
image

Any help greatly appreciated.

Thanks !

Instabug crashes on the latest version

It is a crash by integrating Instabug from CocoaPods.

I have these lines in Podfile:

platform :ios, '7.0'
source "https://github.com/CocoaPods/Specs.git"
source "https://github.com/Accengage/CocoaPodsSpecs.git"

pod "Instabug"

After doing $ pod install, I have version 5.1.0

It's in [IBGBaseHUD show] method.

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'NSConcreteMutableAttributedString initWithString:: nil value'
*** First throw call stack:
(0x182835900 0x181ea3f80 0x182835848 0x183118da4 0x100470ae0 0x100554e4c 0x100e79bf0 0x100e79bb0 0x100e85e3c 0x100e79bb0 0x100e91f54 0x100e7c154 0x100e7f034 0x1827ecbb0 0x1827eaa18 0x182719680 0x183c28088 0x187590d90 0x1001647f8 0x1822ba8b8)
libc++abi.dylib: terminating with uncaught exception of type NSException

Dutch translation

For my current app I would like Dutch translation to be available in the SDK. If I can help providing it, just let me know!

Instabug Pod Spec Modifies Project Files

I want to be able to use Instabug via Cocoapods, but this munging of my project files with your dSYM upload script is unacceptable. I appreciate the thought, but I can take care of marshaling my own build artifacts. Our continuous-integration server is completely hosed as a result of this change, and one of my colleagues is in the process of setting up a fork as I type this, which would've been completely avoidable if this... feature... had been optional.

Instabug invoke from ActionSheet causes crash

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{
    if(buttonIndex == 1){
        [Instabug invoke];
    }
}

With this simple code, what happens is that the Instabug menu is displayed above the existing ActionSheet (which doesn't have enough time to dismiss), and whenever I quit instabug (click on cancel or submit a bug for instance), the app crashes. I can use Instabug all I want, but whenever I dismiss it, it crashes.

Any way to prevent this?

Could not load NIB in bundle: 'BundleEx ... with name 'IBGActionSheetVC-iPhone

Hi
This is what Im getting for iOS9 and Xcode 7

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'BundleEx </var/mobile/Containers/Bundle/Application/01D84B49-EC28-45A2-89C0-2B7F979DC294/Lareb.app> (loaded)' with name 'IBGActionSheetVC-iPhone''
*** First throw call stack:
(0x185db8f5c 0x19a9abf80 0x185db8ea4 0x18b7b99ac 0x18b672cfc 0x18b447ea8 0x18b30f258 0x18b30f1b0 0x18b315f8c 0x18b385c88 0x100116434 0x1000f4450 0x1000f405c 0x1000f3d90 0x1000f7d2c 0x1001150d0 0x100115334 0x100114fc8 0x186cdb82c 0x186c2e6c0 0x186c1e918 0x186cddc20 0x1004fdd30 0x100503780 0x185d70258 0x185d6e0c0 0x185c9cdc0 0x190df0088 0x18b376f60 0x10006c0ac 0x19b1d68b8)
libc++abi.dylib: terminating with uncaught exception of type NSException

Crash under ios 8

After upgrade my iphone to ios 8 and xcode 6, instabug will crash my apps.

Invocation Events on iPad w/ iOS 8.0.2

Love this tool!
I am using library 3.10 for iOS and having some issues with the invocation....
IBGInvocationEventFloatingButton doesn't show anything -- even if I set the background/font colour of the button to wild ones.

IBGInvocationEventTwoFingersSwipeLeft is only working if I swipe DOWN with two fingers in landscape and RIGHT in portrait.

if (IS_IPHONE) {
    [Instabug setInvocationEvent:IBGInvocationEventShake];
} else {
    [Instabug setInvocationEvent:IBGInvocationEventTwoFingersSwipeLeft];
}

-[NSNull length]: unrecognized selector sent to instance

After i submit feedback for the very first time, the app crashes with

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSNull length]: unrecognized selector sent to instance 0x1a0c6cea8'

If i restart the app, it instantly crashes.
If i comment out the Instabug startWithToken and restart the app everything is fine.

Heres my initializer at the very bottom of didFinishLaunchingWithOptions

Instabug.startWithToken("TOKEN_GOES_HERE", invocationEvent: IBGInvocationEventFloatingButton) Instabug.setFloatingButtonEdge(CGRectEdge.MinXEdge, withTopOffset: 100)

The feedback i report does show up in the dashboard at instabug.com

XCode 7.2

iOS 9 support

Hi guys!

Thanks for the work you are doing.

But are you planning on supporting iOS 9?

So far it gives our errors like this:
http://stackoverflow.com/questions/32096130/unexpected-cfbundleexecutable-key

And even after I implemented the new bundle as suggested in the comments, it worked with Xcode beta 5.
But now, after installing Xcode 7 beta 6, it gives a new error that says that the key CFBundleSupportedPlatforms should be removed because it contains iPhoneSimulator value.

Dsym upload temp dir with multiple users

Hi,

I would like to use Instabug in the same machine with different users, however this raises permission errors in Instabug_dsym_upload.sh which creates temp dsym zip files under /tmp/Instabug/<app_name> directory. When I try to run Instabug from another user, that user does not have write permissions to the given folder.

It would be great if there would be a unique temp directory/file for each dzym zip to avoid any permission errors between concurrent builds from different users

Instabug_dsym_upload.sh can't find APP_TOKEN

Instabug_dsym_upload.sh looks great, but I was using a constant for the APP_TOKEN and it was failing because of that.

[Instabug startWithToken:kSTEInstabugToken captureSource:IBGCaptureSourceUIKit invocationEvent:IBGInvocationEventShake];

I'd suggest against parsing the project dir source, as it's error prone, and moving this configuration parameters someplace else like a plist, a constants file or maybe even the script file.

Best!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.