GithubHelp home page GithubHelp logo

applifier-mobile-impact's People

Contributors

aet avatar gomsu avatar heikkiv avatar jannenikula avatar rikshot avatar sergd2005 avatar superjohan avatar

Stargazers

 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

applifier-mobile-impact's Issues

Best way to specify gameId separately for Android and iOS?

I am in the process of integrating this Unity plug-in into my game. On the Everyplay GameAds Dashboard, I have two app definitions with different gameId values: One for the iOS version of the game and one for the Android version. I didn't see a way to share one gameId for both platforms.

In the plug-in, ApplifierImpactMobile only provides an entry field for one gameId. Due to the way it gets initialized behind the scenes as soon as it is referenced for the first time, instead of explicitly, I can't intercept and fill in the appropriate platform-specific gameId easily.

I tried defining my own component that hosts the data, setting it first in the Script Execution Order, and having it pass the appropriate value into the ApplifierImpactMobile component (via direct component reference and NOT ApplifierImpactMobile.SharedInstance), but still no luck. It seems that something during the native app initialization sequence is calling into the plug-in before I can do anything in script (see the call stack below).

What is your recommended method for specifying gameId for two platforms?

E/AndroidRuntime(10459): FATAL EXCEPTION: main
E/AndroidRuntime(10459): java.lang.Error: FATAL EXCEPTION [main]
E/AndroidRuntime(10459): Unity version     : 4.3.7p1
E/AndroidRuntime(10459): Device model      : GOCLEVER QUANTUM 4
E/AndroidRuntime(10459): Device fingerprint: GOCLEVER/GOCLEVER/GOCLEVER:4.2.2/JDQ39/1389409401:user/test-keys
E/AndroidRuntime(10459):
E/AndroidRuntime(10459): Caused by: java.lang.IllegalArgumentException: gameId is empty
E/AndroidRuntime(10459):        at com.applifier.impact.android.ApplifierImpact.init(ApplifierImpact.java:624)
E/AndroidRuntime(10459):        at com.applifier.impact.android.ApplifierImpact.<init>(ApplifierImpact.java:92)
E/AndroidRuntime(10459):        at com.applifier.impact.android.unity3d.ApplifierImpactUnity3DWrapper$1.run(ApplifierImpactUnity3DWrapper.java:71)
E/AndroidRuntime(10459):        at android.os.Handler.handleCallback(Handler.java:800)
E/AndroidRuntime(10459):        at android.os.Handler.dispatchMessage(Handler.java:100)
E/AndroidRuntime(10459):        at android.os.Looper.loop(Looper.java:194)
E/AndroidRuntime(10459):        at android.app.ActivityThread.main(ActivityThread.java:5371)
E/AndroidRuntime(10459):        at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(10459):        at java.lang.reflect.Method.invoke(Method.java:525)
E/AndroidRuntime(10459):        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
E/AndroidRuntime(10459):        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
E/AndroidRuntime(10459):        at dalvik.system.NativeStart.main(Native Method)

Blank Screen after video has played

There is a blank screen after the video finishes playing. There is no way to dismiss the impact and application stalls. This is happening only in Debug mode with web-view on. Disabling web-view fixes it.

problem in onVideoCompleted event

Hello,
There's a problem in onVideoCompleted event that is in ApplifierImpactMobile.cs . In this event skipped variable is always true(boolean), whether video is skipped or not.

App Not Responding

I find it very easy to trigger an ANR when running my game and an Impact opens.

I get the following from logcat:
I/InputDispatcher( 599): Application is not responding: Window{427d2078 u0 com.example/com.unity3d.player.UnityPlayerNativeActivity}. It has been 6077.1ms since event, 5003.7ms since wait started. Reason: Waiting because the touched window has not finished processing the input events that were previously delivered to it.

I/WindowManager( 599): Input event dispatching timed out sending to com.example/com.unity3d.player.UnityPlayerNativeActivity. Reason: Waiting because the touched window has not finished processing the input events that were previously delivered to it.

What I do to trigger it is simply to swipe my finger across the screen just before the Impact is due to start and let go when the buffering dialogue is shown. Then I do nothing for 6 seconds and I get the ANR dialogue.

iPad crash when try to fetch a campaign

Hi,

first : the /applifier-mobile-impact-master/ios/build/Release-iphoneos/ApplifierImpact.framework files tree is not ok.

I had to move back Resources and Headers Folder in the root of the folder (Now Resources and Headers are in Versions Folder)

Second : when the app is starting, iPAD is crashing with this error :

2014-03-21 17:25:22.773 [1227:60b] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[1]'
*** First throw call stack:
(0x2fd5ae8b 0x3a3a26c7 0x2fc98aef 0x2fc988b3 0x8a48c5 0x3a887103 0x3a8870ef 0x3a8899a9 0x2fd255b9 0x2fd23e85 0x2fc8e541 0x2fc8e323 0x349922eb 0x325451e5 0xe46fc 0xe45d8)
libc++abi.dylib: terminating with uncaught exception of type NSException

I'm precising that i'm in Test Mode and i'm using Unity Integration.

Regards

ApplifierImpactVideoPlayer - "Video Stalled" log spam

After a video is played the player's state returns to AVPlayerStatusReadyToPlay which is being observed by the player. This restarts the videoProgressMonitor timer which is causing the log spam since the video is no longer playing.

In commit 59e06cc, the _removeObservers method was changed to dispatch the removeObserver:forKeyPath: call instead of calling it immediately. When destroying the video play, this delays removing the observer until after it observes the status change mentioned above.

Was there a specific reason for that change or would it be safe to revert it to stop the log spam?

Edit: This, of course, only happens with debug mode turned on

Bad access on ApplifierImpactAnalyticsUploader

Hi guys

I found out that I had a bad access in ApplifierImpactAnalyticsUploader on logVideoAnalyticsWithPosition:campaignId:viewed: after integrating your framework.

It occurs each time I try to play a video.
Hopefully, the source code is on github (thanks), so I added directly the source code into my project.
Here is what I found after some digging. It is all about the dispatch queue which are now considered as Objective C objects, so this means under ARC.

This brings up three things :

  • change @property from assign to strong
  • remove dispatch_release from dealloc methods
  • remove OS_OBJECT_USE_OBJC on target settings.

I can imagine that you did this to support oldest versions of iOS (maybe, I'm not sure that this is the case), but in my case, when targeting only iOS 6 + iOS 7 devices and having some libraries like AFNetworking which uses dispatch queues as objective c objects, I'm stuck.

So, if you feel that it would be ok to provide a pull request for this update, I'll happy to do so. Otherwise, at least provide some explanations for people which are in my case.

Regards

DUPLICATE: App Not Responding

I find it very easy to trigger an ANR when running my game and an Impact opens.

I get the following from logcat:
I/InputDispatcher( 599): Application is not responding: Window{427d2078 u0 com.example/com.unity3d.player.UnityPlayerNativeActivity}. It has been 6077.1ms since event, 5003.7ms since wait started. Reason: Waiting because the touched window has not finished processing the input events that were previously delivered to it.

I/WindowManager( 599): Input event dispatching timed out sending to com.example/com.unity3d.player.UnityPlayerNativeActivity. Reason: Waiting because the touched window has not finished processing the input events that were previously delivered to it.

What I do to trigger it is simply to swipe my finger across the screen just before the Impact is due to start and let go when the buffering dialogue is shown. Then I do nothing for 6 seconds and I get the ANR dialogue.

Exception: transition is already in progress

We occasionally get crash reports from our users with the following errors:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Attempting to begin a modal transition from ApplifierImpactMainViewController to MyViewController while a transition is already in progress. Wait for viewDidAppear/viewDidDisappear to know the current transition has completed'

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Attempting to begin a modal transition from ApplifierImpactMainViewController to CustomStoreProductViewController while a transition is already in progress. Wait for viewDidAppear/viewDidDisappear to know the current transition has completed'

Exception for Unity3D Android when showing more than one Impact

Hello.
I have the latest version (from March 18th 2014) and I can get it working just fine on my Android device (built via Unity3D) when wanting to show the first impact.

However if I then a couple of minutes later want to show another one I get an exception in logcat and no Impact is shown.
The exception is as follows:

I/Unity ( 8929): AndroidJavaException: java.lang.NullPointerException
I/Unity ( 8929): at UnityEngine.AndroidJNISafe.CheckException () [0x00000] in :0
I/Unity ( 8929): at UnityEngine.AndroidJNISafe.CallBooleanMethod (IntPtr obj, IntPtr methodID, UnityEngine.jvalue[] args) [0x00000] in :0

I/Unity ( 8929): at UnityEngine.AndroidJavaObject._Call[Boolean](System.String methodName, System.Object[] args) [0x00000] in :0
I/Unity ( 8929): at UnityEngine.AndroidJavaObject.Call[Boolean](System.String methodName, System.Object[] args) [0x00000] in :0
I/Unity ( 8929): at ApplifierImpactMobileExternal.showImpact (System.String zoneId, System.String rewardItemKey, System.String options) [0x00000] in :0
I/Unity ( 8929): at ApplifierImpactMobile.showImpact (System.String zoneId, System.String rewardItemKey, System.Collections.Generic.Dictionary`2 options) [0x00000] in :0
I/Unity ( 8929): at ApplifierImpactMobile.showImpact (System.String zoneId) [0x00000] in :0
I/Unity ( 8929): at ApplifierImpactTest.ShowImpactIfReady () [0x0

The ShowImpactIfReady() method just contains:

if(ApplifierImpactMobile.canShowCampaigns() && ApplifierImpactMobile.canShowImpact()) {
ApplifierImpactMobile.showImpact("");
}

ADS: CAMPAIGNS FETCH FAILED!

I have setup my game id, my id = 13756(IOS),14155(android), but when run in my game app, there said campaigns fetch failed, do i missing any setting? i can run when i thick test mode.

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.