I saw something in my logcat about "Flurry Agent" sending out data to its server. It looks like it collects analytics about certain apps and uploads it.
Does anyone know how to remove/disable this?
A hosts file addition is one way.
Some google search results:
Flurry-Legal
flurry-legal-dcma
Comes with Locale. (I don't have locale installed anymore, yet Flurry was running)
A search on my phone turned up nothing. It may be a library inside an apk.
find / -name "*lurry*"
I've added these line to my hosts file ( /etc/hosts )
127.0.0.1 data.flurry.com
127.0.0.1 flurry.com
127.0.0.1 dev.flurry.com
The below data shows up on the dashboard once flury is added to an app.
Application The name of the application.
New Users The number of new users who used the application for the first time during the specified time period.
Active Users The number of unique users who used the application during the last complete week of the specified time period.
Sessions The total number of user sessions that occurred during the specified time period.
Weekly Growth The percentage increase of new users between the last two complete weeks of the specified time period.
User Retention The percent of users that signed up during the time period have used the app during the last 7 days before today.
Click to expand...
Click to collapse
Also:
Device Model,
Firmware,
Carrier,
Location,
Errors and Exceptions,
Custom 'Events'.
Omg man i just noticed the same thing and was about to post!! I have no idea what app it is though because I don't have locale installed
It could be inside any app you have. Flurry is a company that collect statistics on app usage afaik and developers add the library to their apps. Don't know how widespread it is for developers to do this though.
SBS_ said:
It could be inside any app you have. Flurry is a company that collect statistics on app usage afaik and developers add the library to their apps. Don't know how widespread it is for developers to do this though.
Click to expand...
Click to collapse
Yes I figured that out and even downloaded the sdk.
Found out that BetterTermEmulator pro uses this and sends an error report whenever it crashes.
Code:
I/BetterTermEmulator( 3440): Command: '/system/bin/sh logcat'
I/BetterTermEmulator( 3440): chdir() to '/'
I/BetterTermEmulator( 3440): title is: 'BTEP'
I/BetterTermEmulator( 3440): Starting subprocess '/system/bin/sh logcat null'
I/BetterTermEmulator( 3440): waiting for: 463
D/FlurryAgent( 3440): Starting new session
D/NetworkLocationProvider( 141): addListener(): com.magicandroidapps.bettertermpro
D/NetworkLocationProvider( 141): setMinTime: 0
D/WifiService( 141): acquireWifiLockLocked: WifiLock{NetworkLocationProvider type=2 [email protected]}
D/FlurryAgent( 3440): Sending report to: http://data.flurry.com/aar.do
I/BetterTermEmulator( 3440): Subprocess exited: 2
I/NotificationService( 141): enqueueToast pkg=com.magicandroidapps.bettertermpro [email protected] duration=0
I/BetterTermEmulator( 3440): Subprocesses exited with code 2
E/BetterTermEmulator( 3440): onSizeChanged: W:480 H:762old W:0H:0
D/FlurryAgent( 3440): Ending session
D/LocationManager( 3440): removeUpdates: listener = [email protected]
D/NetworkLocationProvider( 141): removeListener(): com.magicandroidapps.bettertermpro
I use the custom hosts file found over in android app, gonna have to open that up and addd them in if its not already there.
I just noticed this too while working with the Eclipse IDE DDMS and logcat views. Edited my /etc/hosts as well.
for info: the AdFree application is adding these lines to the hosts file
Hello, I have just released my first app called College Football Fight Songs. It is obviously an app that plays all of the college football fight songs. I am a beginner programmer with little experience and have been testing it on a Nexus S 2.3.4 throughout my development. It has worked perfectly even after releasing the app on the Market.
The only problem is that for some reason, it does not work on all devices for whatever reason. I am very confused and don't quite know what to do. It has been made for Android 2.1 and up, and works perfectly on my Nexus S.
The problem with other devices is that when either going to another screen, or going back from a screen, it force closes.
I would like any feedback regarding this problem, or any criticism that you can offer on my app, thanks!
Because I do not have very many posts, I cannot post a link to the Market or even a QR code, but if you just search "College Football Fight Songs" or "Eric Carboni" in the Market, my app is there.
Thanks
Can anyone help?
Sent from my Nexus S using XDA Premium App
ericcarboni said:
Can anyone help?
Sent from my Nexus S using XDA Premium App
Click to expand...
Click to collapse
I'll take a look later tonight after the kids go to sleep and see if I can recreate the fc. If it is in the market have you looked at the error reports and the stack traces?
Sent from my Nexus S using XDA Premium App
I grabbed it quick.....some initial impressions:
It's huge. You should reduce the package size if possible. Make each conference downloadable as a package possibly. You can leverage the market for this. 30 MB is a *large* app especially if I only want a few fight songs.
Since I can't recreate the fc I'll ask a few questions.
How are you handling the player resources in your onPause and onResume methods ?
How are you allocating new resources to play? Are you checking if it is already in use and calling stop before trying to play?
Do you have any error reports that you could post the stack trace from?
Sent from my Nexus S using XDA Premium App
First I just wanted to say thanks for taking the time to help me out with this. Also, I want to say how amazing your NFC Task app is: I've had it for a while now and I've been using it with some key chain tags. I love it.
Yes, I know it is huge. In fact, it is one of the biggest apps I have on my device. After I fix this problem, I will work on making each conference downloadable.
Right now, with my experience with Java, everything I have done with the playing and pausing is really basic. I am not checking if it is already in use to stop it before playing. Right now I have this -- once you are in the 'now playing' screen, I have the onPause method to stop each song from playing. I assumed there was a simpler way to do this..
But anyways, right now, there is one error report that I've gotten. I don't really understand it, but right now all I've gotten out of it is that the error is on the onPause action.
This is the stack trace for that report:
java.lang.RuntimeException: Unable to pause activity {com.carboni.fightsongs/com.carboni.fightsongs.BIG12}: java.lang.NullPointerException
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3348)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3305)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3288)
at android.app.ActivityThread.access$2500(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2044)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:893)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:651)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at com.carboni.fightsongs.BIG12.onPause(BIG12.java:159)
at android.app.Activity.performPause(Activity.java:3842)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1190)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3335)
... 12 more
Any other help you can give me is greatly appreciated, thank you very much
ericcarboni said:
First I just wanted to say thanks for taking the time to help me out with this. Also, I want to say how amazing your NFC Task app is: I've had it for a while now and I've been using it with some key chain tags. I love it.
Yes, I know it is huge. In fact, it is one of the biggest apps I have on my device. After I fix this problem, I will work on making each conference downloadable.
Right now, with my experience with Java, everything I have done with the playing and pausing is really basic. I am not checking if it is already in use to stop it before playing. Right now I have this -- once you are in the 'now playing' screen, I have the onPause method to stop each song from playing. I assumed there was a simpler way to do this..
But anyways, right now, there is one error report that I've gotten. I don't really understand it, but right now all I've gotten out of it is that the error is on the onPause action.
This is the stack trace for that report:
java.lang.RuntimeException: Unable to pause activity {com.carboni.fightsongs/com.carboni.fightsongs.BIG12}: java.lang.NullPointerException
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3348)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3305)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3288)
at android.app.ActivityThread.access$2500(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2044)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:893)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:651)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at com.carboni.fightsongs.BIG12.onPause(BIG12.java:159)
at android.app.Activity.performPause(Activity.java:3842)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1190)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3335)
... 12 more
Any other help you can give me is greatly appreciated, thank you very much
Click to expand...
Click to collapse
Calling pause / stop in the onPause is probably best. You can likely stop it instead of pausing it. The garbage collection should take care of freeing the resources as long as they are not in use when the Activity finishes.
This is the relevant error:
Code:
Caused by: java.lang.NullPointerException
at com.carboni.fightsongs.BIG12.onPause(BIG12.java:159)
I am guessing this is where you are accessing the player object in the onPause() method. However for whatever reason the object is null. It's a good idea to do a null check on the object itself before operating on it.
For operations like this I'd also recommend a try / catch and logging the exception via Log.d or Log.e so that if there is an issue you can pull it from logcat. You can call Lod.d("TagName", "Error and info you want to print") as well we e.printStackTrace() assuming you've named the Exception that is caught e. This will help log info for users (or yourself) for more useful debugging info.
Essentially you want to prevent your app from crashing on non show stopper exceptions. By wrapping these operations in try/catch blocks you're able to gracefully handle the exceptions and move on with your application without FCing.
Using try/catch blocks is really cheap (from an operational perspective) for small apps like this. The catch is the most expensive part, but it will really help you to gracefully handle issues that arise and eliminate force closes.
If you're having trouble tracking down the issue I'll take a look at the source if you want to zip/rar it up and send it over.
Which operations would I wrap a try/catch around?
Thanks for all your help, I think I might send you the source code eventually if I can't figure it out.
And I have a question: why would the app work perfectly on Gingerbread but not other phones with Froyo? Just curious to why this is
ericcarboni said:
Which operations would I wrap a try/catch around?
Thanks for all your help, I think I might send you the source code eventually if I can't figure it out.
And I have a question: why would the app work perfectly on Gingerbread but not other phones with Froyo? Just curious to why this is
Click to expand...
Click to collapse
Honestly - wrap any operations that may result in an exception being thrown (within reason). Depending on your experience this may or may not be something you'll be able to see easily or not. You'll learn quite a bit by trial and error
Generally though if you're dealing with resources that may or may not be available (even if they should *always* be available) it doesn't hurt to wrap them in a try/catch in case an exception is thrown.
Any time you are parsing potentially invalid input and / or casting data it's good to try/catch and handle any exceptions that may creep up.
Some of the audio code (libaudio or libmedia) was changed from Froyo to Gingerbread - you're also working with potential issues from Rosie(Sense)/Touchwiz/Blur. Most of these frameworks make alterations to the subsystems in some form or another and do not always behave in the same manner as an AOSP rom 100 % of the time. You're also dealing with varying devices with varying amounts of resources and multiple services competing for these resources.
In the SDK documentation the classes themselves will show what exceptions are thrown - these are thrown to prevent the app/subsystem from crashing or getting unexpected results. It is your job as the developer to catch these exceptions and handle them.
Obviously it's wasteful to try/catch everything - there's no reason, for example, to try catch the overloaded ++ operator for an integer. If you are doing string manipulation on user input though then you should be doing some sanity checking / handling of exceptions as you may get completely unexpected and bad data.
Any time you are dealing with system resources you'll want to verify that the resource did properly get assigned and handle the exceptions that it may throw as a good practice though.
For example, when you play a media file you are counting on:
The DSP device being availble
The handle to the device being appropriately acquired
The resource to be played being present and properly allocated
The playing of this resource to be properly executed by the subsystem
If any of these things goes wrong then an exception is going to be raised by the subsystem so that it can be handled in your application. If you do not handle the exception your app crashes and you FC. If you handle it though you can deal with it as is appropriate and move on (e.g: inform the user there was an error, log the exception and move on).
ich habe das gleiche problem!!
I've been working on it; do you think using a try/catch for the exceptions that need it will solve the problem completely?
Sent from my Nexus S using XDA Premium App
ericcarboni said:
I've been working on it; do you think using a try/catch for the exceptions that need it will solve the problem completely?
Sent from my Nexus S using XDA Premium App
Click to expand...
Click to collapse
Yes, assuming you're not doing something crazy with the object or resources - your app is FC's because an exception is being raised and not handled. By catching and handling the exception (assuming there isn't an issue with the underlying code) you are able to programmatically deal with these issues.
krohnjw said:
Yes, assuming you're not doing something crazy with the object or resources - your app is FC's because an exception is being raised and not handled. By catching and handling the exception (assuming there isn't an issue with the underlying code) you are able to programmatically deal with these issues.
Click to expand...
Click to collapse
I have done a few, and now it works on a 2.2 emulator, but not on a 2.1, or a 2.2 Galaxy S.. Do you think if I send the project to you, could you take a quick look at it? You've been a lot of help, I appreciate it
I know quite a few users round here use Dropsync. Did you do something special to get it to work?
I've definitely got a working wireless connection, have got my account connected correctly (can find the folder to sync with), but when I hit "sync now" it spins for less than a second and then drops back to status: IDLE. With nothing having updated.
I've made all the settings as unrestrictive as possible (I think) and my battery is 90%.
I use this app fine on my phone, so I can't think what's wrong with it.
I've tried using something else -- "Real sync" -- but that is terrible. Can't do version control properly and creates a huge number of conflicts (including directories that are in fact identical).
If I can't get anywhere with Dropsync, does anyone have recommendations for what works on the Nook: Wuala, Ubuntu One, or anything else (must have linux client)? [Ubuntu One also used to create masses of conflicts back in the day, but I'm hoping that is fixed now]
Fixed: device was full
If anyone else has this problem, have sense to check "Sync History". And if it says "your device storage is almost full" then maybe you should delete something and try again.
I would mark this thread as "solved" but apparently that's something else I'm too stupid to do.
Next problem: how to get the phone to accept the 32gb sd card without crashing, so that the nook can have the phone's 16gb sd card.... (there have been many attempts at this game already).
How about a fix for a device which is not full?
My entire sync history states: "autosync started... sync interrupted... autosync started... sync interrupted..."
I have discovered another error source:
I had the problem that Dropsync would start syncing, but somehow never complete the sync and would say something like "Conditions for autosync not met."
I discovered the reason was that in the settings there was the setting to sync only if battery is more than 80% full (I think that is the default setting). It would happen that the sync would "wear" out the battery enough to drop below 80, and then the sync would stop.
This way I only got working sync while charging. It took me a while to see that pattern, so maybe this note can help some other people.
trebuchet76 said:
How about a fix for a device which is not full?
My entire sync history states: "autosync started... sync interrupted... autosync started... sync interrupted..."
Click to expand...
Click to collapse
I got the same thing the fixed it with uninstall and clean the app data then reinstall it.
tuangd said:
I got the same thing the fixed it with uninstall and clean the app data then reinstall it.
Click to expand...
Click to collapse
After that app works properly, without issues?
Try Dropsync 1.68 instead of newest version
tl;dr: Try dropsync pro 1.68 apk
So I've done a lot of troubleshooting this app over the last couple weeks since I flattened and re-rooted my NST. I as well was getting tons of "sync interrupted" and the sync just going to IDLE state shortly after starting a manual sync (mind you this is without Autosync even being in play). I would run the manual sync over and over and maybe get three or four files to download before it crapped out.
This was frustrating to me since I had this app working PERFECTLY for the last year and a half before re-rooting.
So.... in an act of desperation I tried out an old version of Dropsync that seemed to be from about the time that I had rooted and installed before. In this case I tried the 1.68 APK which was one of the last ones before he jumped up to 2.x version numbers.
In the first couple of days since installing this version it seems to be rock solid again. I don't need any of the additional features - just downloading my Calibre files on demand when I need them.
Do a web search for 1.68 or another version and sideload it to see if it helps out.
For reference, here is the main excpetion I was getting in the log file (when I could get the damn log file to show up)
[2013-07-16 09:45:38-0500] [3874] [W] Exception
c.t.ds.ap: java.io.IOException: SSL handshake failure: Failure in SSL library, usually a protocol error
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (external/openssl/ssl/s3_pkt.c:284 0xaf58a08b:0x00000000)
Similar probs, using Dropsync Free
I'm experiencing the same problem with my NST. I even contacted the software's author. He looked at the log and advised that the problem was with dropped connection. Given that the problem exists on all three connections I have tried (work, home and using my phone as WiFi relay), I was inclined to think that the problem lay with the device's wifi, maybe dropping packets and making dropsync think that there's no connection. Does anyone know how to do a ping from this device?
Since NST's in the UK were on an amazing special offer of £30 (around $48), I bought a spare, and I have the same issues on that!
Someone here suggested uninstalling, clearing the app's data and reinstalling -- what data do you suggest I remove? I use Relaunch as a file browser, have searched for anything with dropsync. It came up with two files (I forget the locations) and one of them, was the log file that is only generated if selected in the app's menu...
Will report back if un-re works.
---------- Post added at 11:26 PM ---------- Previous post was at 10:51 PM ----------
Uninstall reinstall, no different.
Changed folders I was syncing to include only two new files, to a new location on the Nook. Attempted to sync the approx 2MB. Synced fine!! Changed settings back to the folders I was trying to sync, a total of 471 files in 170 folders. Ran for 93 seconds while it analysed I estimate about 80% of my folders, then threw the towel in without getting to the one new file I wanted it to sync.
Conclusion -- the device's WiFi is a bit intermittent or the software is flakey on this device (suspect the latter).
Might invite the author to check this post.
Pertinent part of the log file (I suspect)
java.io.IOException: SSL handshake failure: Failure in SSL library, usually a protocol error
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (external/openssl/ssl/s3_pkt.c:284 0xaf58a08b:0x00000000)
at c.t.ds.ad.a(SourceFile:653)
at c.t.ds.ad.a(SourceFile:145)
at c.t.ds.an.a(SourceFile:69)
at c.t.ds.an.b(SourceFile:64)
at com.ttxapps.dropsync.m.a(SourceFile:1354)
at com.ttxapps.dropsync.m.b(SourceFile:1259)
at com.ttxapps.dropsync.m.b(SourceFile:115)
at com.ttxapps.dropsync.m.b(SourceFile:175)
at com.ttxapps.dropsync.m.b(SourceFile:175)
at com.ttxapps.dropsync.m.b(SourceFile:175)
at com.ttxapps.dropsync.m.a(SourceFile:73)
at com.ttxapps.dropsync.SyncService.a(SourceFile:383)
at com.ttxapps.dropsync.SyncService.onHandleIntent(SourceFile:152)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:30)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.os.HandlerThread.run(HandlerThread.java:60)
Caused by: java.io.IOException: SSL handshake failure: Failure in SSL library, usually a protocol error
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (external/openssl/ssl/s3_pkt.c:284 0xaf58a08b:0x00000000)
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.nativeconnect(Native Method)
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:305)
at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:92)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:321)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:129)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
at c.t.ds.ad.a(SourceFile:563)
at c.t.ds.ad.a(SourceFile:651)
... 16 more
[2013-09-16 00:15:03+0100] [1906] (90186 ms) Processed /sdcard/My Files <=> /Nook
[2013-09-16 00:15:03+0100] [1906] Closing /sdcard/My Files/.dropsync
[2013-09-16 00:15:03+0100] [1906] [D] File CLOSE_WRITE(0x8) /sdcard/My Files/.dropsync
[2013-09-16 00:15:03+0100] [1906] [W] Sync failed with exception:
c.t.ds.ap: java.io.IOException: SSL handshake failure: Failure in SSL library, usually a protocol error
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (external/openssl/ssl/s3_pkt.c:284 0xaf58a08b:0x00000000)
at c.t.ds.ad.a(SourceFile:653)
at c.t.ds.ad.a(SourceFile:145)
at c.t.ds.an.a(SourceFile:69)
at c.t.ds.an.b(SourceFile:64)
at com.ttxapps.dropsync.m.a(SourceFile:1354)
at com.ttxapps.dropsync.m.b(SourceFile:1259)
at com.ttxapps.dropsync.m.b(SourceFile:115)
at com.ttxapps.dropsync.m.b(SourceFile:175)
at com.ttxapps.dropsync.m.b(SourceFile:175)
at com.ttxapps.dropsync.m.b(SourceFile:175)
at com.ttxapps.dropsync.m.a(SourceFile:73)
at com.ttxapps.dropsync.SyncService.a(SourceFile:383)
at com.ttxapps.dropsync.SyncService.onHandleIntent(SourceFile:152)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:30)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.os.HandlerThread.run(HandlerThread.java:60)
Caused by: java.io.IOException: SSL handshake failure: Failure in SSL library, usually a protocol error
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (external/openssl/ssl/s3_pkt.c:284 0xaf58a08b:0x00000000)
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.nativeconnect(Native Method)
at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:305)
at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:92)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:321)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:129)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
at c.t.ds.ad.a(SourceFile:563)
at c.t.ds.ad.a(SourceFile:651)
... 16 more
[2013-09-16 00:15:03+0100] [1906] Sync finished in 93 seconds
[2013-09-16 00:15:03+0100] [1906] 0 change(s) detected and synced
[2013-09-16 00:15:03+0100] [1906] [V] (10) INSERT 2013-09-16 00:15:03 Sync interrupted
[2013-09-16 00:15:03+0100] [1906] --- Sync failed, duration 93 seconds
[2013-09-16 00:15:03+0100] [1906]
Hi folks...
I am using a T-Mo Galaxy Note 3 with 4.3 (jellybean) and the latest Xposed Framework 2.7.1 (for reference, I did also try 2.4 through 2.5.1, with the same results).
I have installed the "Good for Enterprise" application to access my organization's email system. Our policy does NOT restrict use of root, so my issue is NOT with the fact that I am rooted.
However, whenever I enable the framework, even with NO modules enabled, launching Good crashes the app right after I enter my password into it. This is 100% repeatable. If I disable Xposed and reboot, Good works perfectly. This is also 100% repeatable.
I have looked through the logcat output and don't know what to look for, as I see a good amount of recurring debug messages. Any suggestions for how to proceed? Also, is it possible to blacklist an application so Xposed does not try to hook only that app?
Any suggestions are appreciated, and please remember that my organization does NOT restrict root via Good policy, so I don't have to worry about RootCloak, etc.
Thanks folks!
- SG
Xposed Framework Causes Good Mobile Messaging to not function
Hey there, not sure if there is anything that you can do about this but I wanted your input:
For some reason when I activate the xposed installer framework (my Verizon HTC One Max is running the most recent version of the NuSenseSix rom), it causes an app I have installed called "Good for Enterprise" to stop functioning. (Good for Enterprise is used for corporate email). if I disable the framework, then the app functions normally. Is there any way you can give me some advice or a resolution regarding this? the framework version I am running is 2.6.1
Thanks,
Slappy_G said:
Hi folks...
I am using a T-Mo Galaxy Note 3 with 4.3 (jellybean) and the latest Xposed Framework 2.7.1 (for reference, I did also try 2.4 through 2.5.1, with the same results).
I have installed the "Good for Enterprise" application to access my organization's email system. Our policy does NOT restrict use of root, so my issue is NOT with the fact that I am rooted.
However, whenever I enable the framework, even with NO modules enabled, launching Good crashes the app right after I enter my password into it. This is 100% repeatable. If I disable Xposed and reboot, Good works perfectly. This is also 100% repeatable.
I have looked through the logcat output and don't know what to look for, as I see a good amount of recurring debug messages. Any suggestions for how to proceed? Also, is it possible to blacklist an application so Xposed does not try to hook only that app?
Any suggestions are appreciated, and please remember that my organization does NOT restrict root via Good policy, so I don't have to worry about RootCloak, etc.
Thanks folks!
- SG
Click to expand...
Click to collapse
I am experiencing the exact same issue with good and my device. If I keep the framework disabled, good for enterprise works perfectly. As soon as I enable the framework and reboot, good hangs every time when attempting to connect after putting in my password and then just force quits back to the home screen.
I opened a seperate thread regarding the issue not seeing this thread until after I had already posted. I am hopeful that a resolution can be found. I have a Verizon HTC One Max, rooted with NuSenseSix Rom. I have also verified that they do not block access to good when it detects a rooted device. And as stated before, it functions normally on my rooted device as long as I keep the framework disabled.
Please describe in detail what you mean with "stop functioning". Does it crash? Please provide a logcat of the error.
I have merged these two threads. As mentioned, please post a logcat. A blacklist to avoid "loading" Xposed is not possible, because Xposed is initialized at system start and "inherited" by all apps.
rovo89 said:
I have merged these two threads. As mentioned, please post a logcat. A blacklist to avoid "loading" Xposed is not possible, because Xposed is initialized at system start and "inherited" by all apps.
Click to expand...
Click to collapse
Understood. I'll post a logcat this evening of both a positive and a negative case.
I am experiencing the excact same behaviour as stated in the OP, and are working under the same conditions (rooted rom with latest xposed and NO anti-root policy). I would LOVE to help providing logcats, and i happen to be part of the IT department enforcing Good, so i can really test this (they wont blacklist me).
I will produce som logcat for you, any advice on how to best do this? Otherwise i will just throw something at best effort :good: :laugh:
Update: Back with a log, see attatched.
I started Catlog (app), pressed home and launched GFE. I then entered my password, and the app crashed. After this i clicked the shortcut on my launcher to start (resume) catlog, and paused the logging. I then exported the whole thing to the attatched textfile. The loglevel is Verbose.
If any system information is needed, other than those in the log file, please ask.
Kind Regards
TwinAdk
Thanks. I don't see any crash/exception of the application there. Is it a normal crash ("<app> has stopped working" or whatever that message says)? If so, can you get the stack trace from it?
But what I noticed is that you have at least one module with quite verbose output (all those lines with "Xposed" tag, they don't come from the framework). Could you please make sure that it crashes even without any active modules?
rovo89 said:
Thanks. I don't see any crash/exception of the application there. Is it a normal crash ("<app> has stopped working" or whatever that message says)? If so, can you get the stack trace from it?
But what I noticed is that you have at least one module with quite verbose output (all those lines with "Xposed" tag, they don't come from the framework). Could you please make sure that it crashes even without any active modules?
Click to expand...
Click to collapse
I will deactivate all modules and re-take the log. It still crashes, that's for sure. When i will screen record the crash, it's not a stopped working crash, the app just closes with it's 'switch to launcher animation'. Once reopened it loads from scratch.
---------- Post added at 11:23 PM ---------- Previous post was at 10:32 PM ----------
Back with log of crash two times in a row, and screen record of working and failing good app. Notice that good cannot he screen recorded, hence the black screen when I'm inside the app. After the working recording I enabled xposed framework and rebooted.
Video and log here:
https://www.dropbox.com/sh/zrkivu9u0k4u2od/AAA5io6UfphGumblJCduRp8da
When you got the files, tell me, I'll remove them from dropbox then.
Kind Regards
TwinAdk
Twin, thanks for uploading the log files and the sharing the videos. i've been super busy and haven't had a chance to do this. what you are showing in your videos is exactly what is happening on my device when the framework is enabled (with no modules enabled/loaded). good prompts for my password and then force quits back to the home screen. it does this over and over again until I disable the framework and restart my device. then good functions normally.
Rovo, let me know if you need me to also supply logs from my device, or if what twin provided is enough to troubleshoot this.
thanks,
No problem, i know that far too well The phone having the problem is a HTC One, m7_ul, running the AICP project rom from here: http://forum.xda-developers.com/showthread.php?t=2632667
I also have an Samsung xCover 2 i can test it on (the wifes) and the former phone, the HTC One X, running a similair AICP rom, in a slightly older version. If this has any intereset, let me know. It would
Also, it occured to me, the Good app also hangs during the initial setup of Good (you have to pair the Good app with your company, by entereing your email address and a one-time key. This is done upon starting the app for the first time).. It has a process where it, after the email and onetime key is submitted, will "log in" - "check stuff" [NOT root policies etc i believe] - "preforms the secure connection" [between phone and company] - "fetches corporate settings" (this is the step where it freezes with XPosed enabled, hence never allowing the initial setup to complete) - "saving settings" [initial setup done, the app loads, if no xposed is present].
Are you interested in a logcat of that process aswell? I am quite sure its the same thing stopping the app from working.
Kind Regards
TwinAdk
EDIT: I just realised the video of the Good app working, was unable to play anywhere else than on my phone, so i screenrecorded it playing on my phone, and posted the screenrecord of a screenrecord to dropbox
you are correct, if i uninstall good and attempt to reinstall while the framework is enabled, it hangs on "retrieving corporate settings". If i disable the framework and reinstall, installation completes with no issues and functions normally. Again this is just enabling the framework on my device, not loading or enabling any modules. I am using a verizon htc one max running rooted nusensesix rom
TwinAdk said:
Video and log here:
https://www.dropbox.com/sh/zrkivu9u0k4u2od/AAA5io6UfphGumblJCduRp8da
When you got the files, tell me, I'll remove them from dropbox then.
Click to expand...
Click to collapse
Thanks, you can remove them.
This isn't a crash - the app deliberatly goes back to the launcher:
Code:
07-16 22:53:08.172 I/ActivityManager(585): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.good.android.gfe/com.good.android.ui.LaunchHomeActivity bnds=[540,960][540,960]} from pid 1068
07-16 22:53:08.312 I/ActivityManager(585): Start proc com.good.android.gfe for activity com.good.android.gfe/com.good.android.ui.LaunchHomeActivity: pid=4604 uid=10161 gids={50161, 3003, 1028, 1015, 1023, 1006}
07-16 22:53:08.943 W/ActivityManager(585): Unable to start service Intent { cmp=com.dell.enterpriseservices/.EnterpriseService } U=0: not found
07-16 22:53:09.633 I/WindowManager(585): Screenshot max retries 4 of Token{41ca04d8 ActivityRecord{41ab9a78 u0 com.good.android.gfe/com.good.android.ui.LaunchHomeActivity t5 f}} appWin=Window{41d18a68 u0 Starting com.good.android.gfe} drawState=4
07-16 22:53:09.643 W/WindowManager(585): Screenshot failure taking screenshot for (1080x1920) to layer 21015
07-16 22:53:09.653 I/ActivityManager(585): START u0 {cmp=com.good.android.gfe/com.good.android.ui.activities.AppLockActivity (has extras)} from pid 4604
07-16 22:53:09.663 W/ActivityManager(585): startActivity called from finishing ActivityRecord{41ab9a78 u0 com.good.android.gfe/com.good.android.ui.LaunchHomeActivity t5 f}; forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent { cmp=com.good.android.gfe/com.good.android.ui.activities.AppLockActivity (has extras) }
...
[B][COLOR="Red"]07-16 22:53:22.687 I/ActivityManager(585): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000000 cmp=com.teslacoilsw.launcher/com.android.launcher2.Launcher} from pid 4604[/COLOR][/B]
...
07-16 22:53:23.208 I/ActivityManager(585): Process com.good.android.gfe (pid 4604) has died.
07-16 22:53:23.208 I/WindowState(585): WIN DEATH: Window{41f2c360 u0 com.good.android.gfe/com.good.android.ui.activities.AppLockActivity}
I have decompiled the app and it indeed has code for that. Unfortunately, they have used Proguard to obfuscate the code, so it's very hard to understand why exactly they show the launcher. Maybe they have detected Xposed or something done by it, or it caused an unexpected situation.
You could try one more thing - disable the Xposed resources APIs in the installer settings and reboot. That disables a good part of Xposed. If that doesn't help, someone would need to analyse the app in detail. I'm saying "someone" because I don't have enough free time for that.
rovo89 said:
Thanks, you can remove them.
This isn't a crash - the app deliberatly goes back to the launcher:
Code:
07-16 22:53:08.172 I/ActivityManager(585): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.good.android.gfe/com.good.android.ui.LaunchHomeActivity bnds=[540,960][540,960]} from pid 1068
07-16 22:53:08.312 I/ActivityManager(585): Start proc com.good.android.gfe for activity com.good.android.gfe/com.good.android.ui.LaunchHomeActivity: pid=4604 uid=10161 gids={50161, 3003, 1028, 1015, 1023, 1006}
07-16 22:53:08.943 W/ActivityManager(585): Unable to start service Intent { cmp=com.dell.enterpriseservices/.EnterpriseService } U=0: not found
07-16 22:53:09.633 I/WindowManager(585): Screenshot max retries 4 of Token{41ca04d8 ActivityRecord{41ab9a78 u0 com.good.android.gfe/com.good.android.ui.LaunchHomeActivity t5 f}} appWin=Window{41d18a68 u0 Starting com.good.android.gfe} drawState=4
07-16 22:53:09.643 W/WindowManager(585): Screenshot failure taking screenshot for (1080x1920) to layer 21015
07-16 22:53:09.653 I/ActivityManager(585): START u0 {cmp=com.good.android.gfe/com.good.android.ui.activities.AppLockActivity (has extras)} from pid 4604
07-16 22:53:09.663 W/ActivityManager(585): startActivity called from finishing ActivityRecord{41ab9a78 u0 com.good.android.gfe/com.good.android.ui.LaunchHomeActivity t5 f}; forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent { cmp=com.good.android.gfe/com.good.android.ui.activities.AppLockActivity (has extras) }
...
[B][COLOR="Red"]07-16 22:53:22.687 I/ActivityManager(585): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000000 cmp=com.teslacoilsw.launcher/com.android.launcher2.Launcher} from pid 4604[/COLOR][/B]
...
07-16 22:53:23.208 I/ActivityManager(585): Process com.good.android.gfe (pid 4604) has died.
07-16 22:53:23.208 I/WindowState(585): WIN DEATH: Window{41f2c360 u0 com.good.android.gfe/com.good.android.ui.activities.AppLockActivity}
I have decompiled the app and it indeed has code for that. Unfortunately, they have used Proguard to obfuscate the code, so it's very hard to understand why exactly they show the launcher. Maybe they have detected Xposed or something done by it, or it caused an unexpected situation.
You could try one more thing - disable the Xposed resources APIs in the installer settings and reboot. That disables a good part of Xposed. If that doesn't help, someone would need to analyse the app in detail. I'm saying "someone" because I don't have enough free time for that.
Click to expand...
Click to collapse
See the dropbox folder. I ticked the option and rebooted, then I had same experience and found the shown in the logcat....
Mornig,
I just noticed that i get a notification from Good, saying that "GFE does not have connection [to the corporate network]. Unlock GFE to initiate the connection". See the screenshot (_20140718_072316.JPG) posted in the dropbox folder. I received this while GFE was unable to open, and it confirms that GFE is indeed running in the background..
I tried to rename the Xposed app in the phone, to test, using xSuite (weak attempt, but you never know). Also, i stripped GFE of some permissions using the App Settings module:
- Read External storage
- Read Logs
- com.dell.enterpriseservices.SET_PROPERTY_THIRDPARTY_APPINSTALL (custom GFE permission added to the manifest i belive). Possibly a permission used for corporate inforced rules (that do not apply here yet, but i still nuked it)
I will try stripping permissions to see where it gets me.
Also, there is this module, - http://repo.xposed.info/module/com.phantasm.xposed.gfesecuritypatcher - but it does not work for me at least.
Then there is this thread - http://forum.xda-developers.com/showthread.php?t=2040163 - but the "4.3+ xposed way" mentioned in the very first post, is also no good...
I also tested the rootcloak app, where the developer says it may work with GFE, but he needs more testing. It does not.
I fear however, that all these past efforts have been nullified by some recent GFE update, because the case here is that we dont even get to start the program.
Kind Regards
TwinAdk
EDIT: Okay, that was quick.. I stripped GFE of EVERY SINGLE permission. This caused it to FC on me the first time. The dump report revealed it needed the WAKE_LOCK permission, so i granted it that and retried.. On the second launch, it returned to my launcher as we have seen before...
In fact, i find this behaviour unacceptable, as my company has NOT decided against Xposed, rooting, etc, and a company could for all we know depend on both GFE and Xposed (unlikely, yes, impossible, no). But GFE seems to be dead set against opening up when Xposed is active.
Would it be possible to intercept and block the return to launcher call to android? Just to see where it gets us? This would require a module, i know.
---------- Post added at 08:32 AM ---------- Previous post was at 07:36 AM ----------
Okay, i read up on another thread, and found this post here: http://forum.xda-developers.com/showpost.php?p=53198439&postcount=833
It states the following:
Information Notification: Good for Enterprise (GFE) Good Mobile Messaging Client (GMMC) for Android v2.5 running Android OS v4.4.2 May Encounter Application Restarts After Entering the Password on the Nexus 4 and Nexus 5 Device
Date: June 3, 2014
Problem:
Good for Enterprise (GFE) Good Mobile Messaging Client (GMMC) for Android version 2.5 running Android OS 4.4.2 may encounter application restarts after entering the password on the Nexus 4 and Nexus 5 Device. This problem has occurred after upgrading from GMMC for Android version 2.4 to GMMC for Android version 2.5 and with doing a fresh installation of GMMC for Android version 2.5.
Environment:
· Good for Enterprise (GFE) Good Mobile Messaging Client (GMMC) for Android version 2.5
· Nexus 4 and Nexus 5 devices with Android OS 4.4.2
Please Note:
A re-install of the GFE GMMC Android version 2.5 will not resolve the problem.
Workaround:
Please install the older version of Good for Enterprise (GFE) Good Mobile Messaging Client (GMMC) for Android version 2.4 on your device and disable the auto update setting for this application.
· Here is the link to get the GFE for Android 2.4 release - https://get.good.com/ea/android/
· It's very important to disable the auto update for the application, so it does not auto update to GFE version 2.5.
o Open the Google Play Store
o Hit Menu (3 dots in the upper right)
o Select Settings
o Uncheck 'Auto-update' apps
FIX:
Good Engineering is currently working on a permanent fix for this issue. We will keep you updated on the availability of the new software version.
If you have questions, please contact our technical support team at 1-408-352-7100, 1-866-448-8458 or submit an online support ticket at www.good.com/gmp.
Thank you,
Click to expand...
Click to collapse
Provided this information, i downloaded the 2.4 release of GFE, instead of the 2.5 from Google Play Store - and it just works.
After uninstalling 2.5, rebooting and installing 2.4, i can open up GFE with Xposed fully enabled. I also have the GFE Patcher module (http://repo.xposed.info/module/com.phantasm.xposed.gfesecuritypatcher) installed, just in case.. even though my company does not block root.
Summa summarum - It seems we can call off the witch hunt, and conclude that its a bug in 2.5 of GFE causing the issues.
Also, the GFE Patch module seems to work for people with root, and in the thread where i found the bug-info, people are reporting that 2.5 of GFE works, when installed on top of 2.4, via playstore. This is however not the case for me, 2.5 still returns to launcher.
@revo89, thank you for all your time and effort in this matter, and once again, thank you for the xposed framework as a whole, its is a truly amazing piece of art, and my phone is not my phone without it! :good::good:
@twin
You are absolutely correct buddy. After reading your recent update to this thread, I removed and reinstalled w/ GFE 2.4 via the link you provided. that took care of my issue. I can use GFE 2.4 with the framework & modules enabled with no issues. as soon as I upgrade again to 2.5, I start experiencing the same issue as before where it force quits back to the home screen. for now I will use 2.4 until a newer version of GFE is released and will test again with that version. but at least now I have a working solution to the issue.
thanks again for all your time and assistance in troubleshooting this problem.
Thanks so much everyone for working on this thread. I run xposed on a Verizon note2 and I have been having this same issue described here. Its been driving me crazy and I've had to live without xposed since this 'bug' arrived. I'll try 2.4 as well and then wait for GFE to fix the newer versions. Thanks again.
I had this issue.. It's rom dependant.
I had one rom on my Note2 that had this issue. But a rooted stock rom does not have this issue.
I'm running a HTC One M8 as of today. It's got rooted stock, it also does not have this issue.
Hope that helps (but yeah 2.4 works, I kept a backup in titanium)
Indeed, it seems that the rom makes a difference, because some people say it works (2.5), and some doesnt.. Must be parts of the rom that is the issue, and that part is used only in some roms
Kind Regards
TwinAdk
Awesome, this thread was a lifesaver! I couldn't figure out why and kept reinstalling and on the phone with tech support at my company who basically told me to do a hard reset (right....). The older version 2.4 works fine. Thanks TwinAdk!