Giter Club home page Giter Club logo

satismeter-ios's People

Contributors

antongorb avatar arbenpnishi avatar esatp avatar jsedlacek avatar ondrejsedlacek avatar s0sh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

satismeter-ios's Issues

Copy & paste code in SatisMeter.m

Show Satismeter survey after app launch

My application shows an initial loading screen whilst data is downloaded before transitioning to the first screen of my app. When I don't call identify in didFinishLaunching Satismeter never shows and I can't clearly see a way to launch it at another point on the customer journey

400 Bad Request

I get a 400 bad request anytime I fill in a survey. See below for sample response in the log.

Error: Error Domain=com.alamofire.error.serialization.response Code=-1011 "Request failed: bad request (400)" UserInfo={NSLocalizedDescription=Request failed: bad request (400), NSErrorFailingURLKey=https://app.satismeter.com/api/responses, com.alamofire.serialization.response.error.data={length = 47, bytes = 0x7b226572 726f7273 223a5b7b 22746974 ... 66696564 227d5d7d }, com.alamofire.serialization.response.error.response=<NSHTTPURLResponse: 0x282085b00> { URL: https://app.satismeter.com/api/responses } { Status Code: 400, Headers {
    "Access-Control-Allow-Headers" =     (
        "Content-Type,Auth-Token"
    );
    "Access-Control-Allow-Methods" =     (
        "PUT,POST"
    );
    "Access-Control-Allow-Origin" =     (
        "*"
    );
    "Access-Control-Expose-Headers" =     (
        "Location,Auth-Token"
    );
    Connection =     (
        "keep-alive"
    );
    "Content-Length" =     (
        47
    );
    "Content-Type" =     (
        "application/json; charset=utf-8"
    );
    Date =     (
        "Thu, 20 Feb 2020 21:53:15 GMT"
    );
    Etag =     (
        "W/\"2f-j2bd44CrSw0K37KdSWGeWzQmJcc\""
    );
    Server =     (
        Cowboy
    );
    "Strict-Transport-Security" =     (
        "max-age=15552000; includeSubDomains"
    );
    Vary =     (
        "Accept-Encoding"
    );
    Via =     (
        "1.1 vegur"
    );
    "X-Powered-By" =     (
        Express
    );
    "X-Request-Id" =     (
        "1f30905a-64e6-4262-8380-30fed0c7e6b0"
    );
} }}, <NSHTTPURLResponse: 0x282085b00> { URL: https://app.satismeter.com/api/responses } { Status Code: 400, Headers {
    "Access-Control-Allow-Headers" =     (
        "Content-Type,Auth-Token"
    );
    "Access-Control-Allow-Methods" =     (
        "PUT,POST"
    );
    "Access-Control-Allow-Origin" =     (
        "*"
    );
    "Access-Control-Expose-Headers" =     (
        "Location,Auth-Token"
    );
    Connection =     (
        "keep-alive"
    );
    "Content-Length" =     (
        47
    );
    "Content-Type" =     (
        "application/json; charset=utf-8"
    );
    Date =     (
        "Thu, 20 Feb 2020 21:53:15 GMT"
    );
    Etag =     (
        "W/\"2f-j2bd44CrSw0K37KdSWGeWzQmJcc\""
    );
    Server =     (
        Cowboy
    );
    "Strict-Transport-Security" =     (
        "max-age=15552000; includeSubDomains"
    );
    Vary =     (
        "Accept-Encoding"
    );
    Via =     (
        "1.1 vegur"
    );
    "X-Powered-By" =     (
        Express
    );
    "X-Request-Id" =     (
        "1f30905a-64e6-4262-8380-30fed0c7e6b0"
    );
} }, {
    errors =     (
                {
            title = "Campaign not specified";
        }
    );
}

Handling user log out

Is there a way to do this?

There doesn't seem to be a teardown method or something similar.

Xcode 14 compatibility when adding the lib from Cocoapods

If you install this lib as a pod and open it in a new Xcode (starting from 14), you'll see an error message saying that Signing for SatisMeter requires a development team. Select a development team in the Signing & Capabilities editor.

The only workaround is to add this as a framework to an existing project as described here. (The manual also uses a very old Xcode version ๐Ÿ™‚)

P.S. workarounds mentioned here do not work.

m1 support adding arm64 for simulator

I integrate Satismeter via manual installation and got this error when try to build on m1 simulator

In ../SatisMeter/libSatisMeter.a(SatisMeter.o), building for iOS Simulator, but linking in object file built for iOS, file '../SatisMeter/libSatisMeter.a' for architecture arm64

Is there anyway I can solve this?

Library not compatible with Bitcode-enabled apps

Hi guys - been using Satismeter on my website for a while and would like to integrate it onto iOS. I'm getting an error when trying to archive the project with the Satismeter cocooapods installed saying it can't be exported because it isn't bitcode enabled - see this SO post for reference: http://stackoverflow.com/questions/34666247/bitcode-bundle-could-not-be-generated-because-ios-charts

I think just building a new version of the framework in XCode 7 should solve the issue

Warnings in builds

Report from our customer:

we are getting warnings w/r/t external libraries that come from libSatisMeter.o:

GenerateDSYMFile /Users/mbabin/Library/Developer/Xcode/DerivedData/WhenIWork-awgxyilzflaxlzgbdwokzvmqcvap/Build/Products/Debug-iphonesimulator/WhenIWork.app.dSYM /Users/mbabin/Library/Developer/Xcode/DerivedData/WhenIWork-awgxyilzflaxlzgbdwokzvmqcvap/Build/Products/Debug-iphonesimulator/WhenIWork.app/WhenIWork

cd "/Users/mbabin/Projects/When I Work/wheniwork-ios"

export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dsymutil /Users/mbabin/Library/Developer/Xcode/DerivedData/WhenIWork-awgxyilzflaxlzgbdwokzvmqcvap/Build/Products/Debug-iphonesimulator/WhenIWork.app/WhenIWork -o /Users/mbabin/Library/Developer/Xcode/DerivedData/WhenIWork-awgxyilzflaxlzgbdwokzvmqcvap/Build/Products/Debug-iphonesimulator/WhenIWork.app.dSYM



while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/Foundation-3DFYNEBRQSXST.pcm: No such file or directory

note: Module debugging should be disabled when shipping static libraries.

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/UIKit-1V5UHAPTOD24G.pcm: No such file or directory

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/SystemConfiguration-354UAJE49HRJF.pcm: No such file or directory

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/Darwin-38I6DLZ5IH61J.pcm: No such file or directory

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/MobileCoreServices-N94D31PLFESQ.pcm: No such file or directory

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/CoreGraphics-N94D31PLFESQ.pcm: No such file or directory

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/Security-T0W5HZGV3ZZ1.pcm: No such file or directory

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SatisMeter.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/ObjectiveC-1RQA2RIXJIE19.pcm: No such file or directory

while processing /Users/mbabin/Projects/When I Work/wheniwork-ios/StatisMeter/libSatisMeter.a(SMAFURLRequestSerialization.o):

warning: /Users/mac/Library/Developer/Xcode/DerivedData/ModuleCache/CZ5J6EE9YZDK/CoreFoundation-J9ZOXGK4ZTRR.pcm: No such file or directory

I'm not sure if by using static libraries that we MUST turn off Modules, but we'd like to not to if we don't have to.

Position of survey box

is there a way to show the survey box on top or in the middle? it works on web but not in sdk. Can anyone help me?

Crash on iOS 8

Steps to reproduce:

  1. Wait for SatisMeter view to appear
  2. Dismiss view.
  3. Rotate device

Expected result:
Screen contents do or do not rotate, based on device size.

Actual result:
Crash

Here's the relevant part of the error:

"Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSMethodSignature deviceDidRotate:]: unrecognized selector sent to instance 0x7ffe3cee0fd0'"

iOS 9 devices do not demonstrate the problem.

Swift Package Manager support

Hey team!

Is SPM support on the roadmap? I think users will benefit from that. Since Xcode 12 it is possible to distribute binaries through SPM, and the integration process seems much easier this way.

Kind regards.

SatisMeter is already shown

Hi, I'm getting "SatisMeter is already shown" from our app when I trying to force show a Survey after a user closed it sometime in the past.

I can't find any SatisMeter related views in views hierarchy. So I assume it's really closed.

Of course, this happens only when application stays in memory. After the new app start it's ok.

Allow calling identifyUserWithUserId multiple times

If called second time:

  • If the survey is already shown, do nothing
  • If the survey is not shown, but /api/widget request already in progress, cancel previous request and perform a new request with new data
  • Otherwise perform a new request with new data and show widget according to the result of it

Give a way to force showing the survey

Let's give users a way to force showing the survey for testing purposes.

From our customer:

Give a way to test the display of the popup. We aren't able to trigger it correctly by adjusting the createdAt date for testing.

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.