I have an Android app created using Titanium’s 1.8.2 SDK. I recently got it into the market (or Google Play store or whatever the kids are calling it these days) and was getting some complaints about the app force closing when first launched.
After hours of not seeing it, I finally figured out that every time I open the installed app from within Google Play…it crashes and the reopens itself just fine. If I open from the apps list or from a home screen it skips the whole crashing drama and just opens right up.
Any idea what might be going on that makes the context of opening so important to whether the app opens? This issue has been lingering for a couple of days now and I can’t seem to get a handle on it.
Any insight would be much appreciated.
Thanks.
UPDATE
Just for the sake of adding new info, here are the errors generated by my app when opening from the market:
06-21 12:04:19.619 I/ActivityManager( 129): Starting activity: Intent { act=android.intent.action.MAIN flg=0x10000000 cmp=org.inova.mobile/.VisitInovaActivity } from pid 540
06-21 12:04:19.649 D/Volley ( 540): [13] DiskBasedCache.put: Could not clean up file /data/data/com.android.vending/cache/main/1576876231-2119069592
06-21 12:04:19.779 I/ActivityManager( 129): Start proc org.inova.mobile for activity org.inova.mobile/.VisitInovaActivity: pid=7860 uid=10131 gids={1015, 3003}
06-21 12:04:19.889 D/StatusBarPolicy( 196): onSignalStrengthsChanged
06-21 12:04:19.889 D/StatusBarPolicy( 196): iconIndex=1
06-21 12:04:19.889 V/StatusBarPolicy( 196): cdmaLevel:2;max:4
06-21 12:04:19.889 D/StatusBarPolicy( 196): iconLevel:2
06-21 12:04:19.889 D/StatusBarService( 196): updateIcon slot=phone_signal index=20 viewIndex=14 old=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 ) icon=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 )
06-21 12:04:19.909 I/TiApplication( 7860): (main) [0,0] checkpoint, app created.
06-21 12:04:19.969 I/TiApplication( 7860): (main) [68,68] Titanium 1.8.2 (2012/02/23 17:46 59b3a90)
06-21 12:04:20.069 D/dalvikvm( 7860): GC_CONCURRENT freed 300K, 47% free 3033K/5639K, external 0K/0K, paused 2ms+3ms
06-21 12:04:20.129 D/Volley ( 540): [14] DiskBasedCache.put: Could not clean up file /data/data/com.android.vending/cache/main/-743566663-837635707
06-21 12:04:20.129 D/Volley ( 540): [13] DiskBasedCache.put: Could not clean up file /data/data/com.android.vending/cache/main/-743566663-826319580
06-21 12:04:20.160 D/Database( 7860): dbopen(): path = /data/data/org.inova.mobile/databases/Titanium, flag = 6, file size = 4096
06-21 12:04:20.160 D/MediaPlayer( 540): reset() in
06-21 12:04:20.160 V/MediaPlayer( 540): reset
06-21 12:04:20.160 D/MediaPlayer( 540): reset() out
06-21 12:04:20.200 D/Database( 7860): dbopen(): path = /data/data/org.inova.mobile/databases/Titanium, mode: wal, disk free size: 16 M, handle: 0x341758
06-21 12:04:20.250 D/Database( 7860): dbopen(): path = /data/data/org.inova.mobile/databases/Titanium, flag = 6, file size = 4096
06-21 12:04:20.330 D/Database( 7860): dbopen(): path = /data/data/org.inova.mobile/databases/Titanium, mode: wal, disk free size: 16 M, handle: 0x345838
06-21 12:04:20.380 I/TiApplication( 7860): (main) [406,474] Titanium Javascript runtime: v8
06-21 12:04:20.380 D/dalvikvm( 7860): Trying to load lib /data/data/org.inova.mobile/lib/libstlport_shared.so 0x4051bc80
06-21 12:04:20.390 D/dalvikvm( 7860): Added shared lib /data/data/org.inova.mobile/lib/libstlport_shared.so 0x4051bc80
06-21 12:04:20.390 D/dalvikvm( 7860): No JNI_OnLoad found in /data/data/org.inova.mobile/lib/libstlport_shared.so 0x4051bc80, skipping init
06-21 12:04:20.390 D/dalvikvm( 7860): Trying to load lib /data/data/org.inova.mobile/lib/libkroll-v8.so 0x4051bc80
06-21 12:04:20.420 D/dalvikvm( 7860): Added shared lib /data/data/org.inova.mobile/lib/libkroll-v8.so 0x4051bc80
06-21 12:04:20.910 E/TiLaunchActivity( 7860): (main) [535,1009] Android issue 2373 detected (missing intent CATEGORY_LAUNCHER), restarting app. org.inova.mobile.VisitInovaActivity@4052faa0
06-21 12:04:20.910 E/TiApplication( 7860): (KrollRuntimeThread) [0,1009] APP PROXY: ti.modules.titanium.app.AppModule@40530ac0
06-21 12:04:21.020 D/ATRecorder( 7860): com.htc.autotest.dlib.RecordEngine in loader dalvik.system.DexClassLoader@4058a280
06-21 12:04:21.020 I/TiRootActivity( 7860): (main) [0,0] checkpoint, on root activity resume. activity = org.inova.mobile.VisitInovaActivity@4052faa0
06-21 12:04:21.020 D/AndroidRuntime( 7860): Shutting down VM
06-21 12:04:21.020 W/dalvikvm( 7860): threadid=1: thread exiting with uncaught exception (group=0x4001d5a0)
06-21 12:04:21.030 E/TiApplication( 7860): (main) [3,3] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to resume activity {org.inova.mobile/org.inova.mobile.VisitInovaActivity}: java.lang.ClassCastException: java.lang.String; Titanium 1.8.2,2012/02/23 17:46,59b3a90
06-21 12:04:21.030 E/TiApplication( 7860): java.lang.RuntimeException: Unable to resume activity {org.inova.mobile/org.inova.mobile.VisitInovaActivity}: java.lang.ClassCastException: java.lang.String
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2460)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2481)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1847)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ActivityThread.access$1500(ActivityThread.java:132)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1038)
06-21 12:04:21.030 E/TiApplication( 7860): at android.os.Handler.dispatchMessage(Handler.java:99)
06-21 12:04:21.030 E/TiApplication( 7860): at android.os.Looper.loop(Looper.java:150)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ActivityThread.main(ActivityThread.java:4263)
06-21 12:04:21.030 E/TiApplication( 7860): at java.lang.reflect.Method.invokeNative(Native Method)
06-21 12:04:21.030 E/TiApplication( 7860): at java.lang.reflect.Method.invoke(Method.java:507)
06-21 12:04:21.030 E/TiApplication( 7860): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
06-21 12:04:21.030 E/TiApplication( 7860): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
06-21 12:04:21.030 E/TiApplication( 7860): at dalvik.system.NativeStart.main(Native Method)
06-21 12:04:21.030 E/TiApplication( 7860): Caused by: java.lang.ClassCastException: java.lang.String
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ContextImpl$SharedPreferencesImpl.getBoolean(ContextImpl.java:3034)
06-21 12:04:21.030 E/TiApplication( 7860): at org.appcelerator.titanium.TiProperties.getBool(TiProperties.java:108)
06-21 12:04:21.030 E/TiApplication( 7860): at org.appcelerator.titanium.TiLaunchActivity.alertMissingLauncher(TiLaunchActivity.java:195)
06-21 12:04:21.030 E/TiApplication( 7860): at org.appcelerator.titanium.TiLaunchActivity.onResume(TiLaunchActivity.java:345)
06-21 12:04:21.030 E/TiApplication( 7860): at org.appcelerator.titanium.TiRootActivity.onResume(TiRootActivity.java:73)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1242)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.Activity.performResume(Activity.java:3957)
06-21 12:04:21.030 E/TiApplication( 7860): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2450)
06-21 12:04:21.030 E/TiApplication( 7860): ... 12 more
06-21 12:04:21.591 D/StatusBarPolicy( 196): hasService()=true ,mDataState=2 ,mPhone.htcModemLinkOn()=false ,mDataActivity=0
06-21 12:04:21.591 D/StatusBarPolicy( 196): slotType[0]=empty
06-21 12:04:21.591 D/StatusBarService( 196): updateIcon slot=data_connection index=18 viewIndex=13 old=StatusBarIcon(pkg=com.android.systemui id=0x7f020020 level=0 visible=true num=0 ) icon=StatusBarIcon(pkg=com.android.systemui id=0x7f020015 level=0 visible=true num=0 )
06-21 12:04:22.632 D/Finsky ( 540): [1] 1.run: Referrer for org.inova.mobile cleared
06-21 12:04:26.616 D/StatusBarPolicy( 196): onSignalStrengthsChanged
06-21 12:04:26.626 D/StatusBarPolicy( 196): iconIndex=1
06-21 12:04:26.626 V/StatusBarPolicy( 196): cdmaLevel:2;max:4
06-21 12:04:26.626 D/StatusBarPolicy( 196): iconLevel:2
06-21 12:04:26.636 D/StatusBarService( 196): updateIcon slot=phone_signal index=20 viewIndex=14 old=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 ) icon=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 )
06-21 12:04:27.417 D/skia ( 267): purging 183K from font cache [22 entries]
06-21 12:04:27.447 D/StatusBarPolicy( 196): hasService()=true ,mDataState=2 ,mPhone.htcModemLinkOn()=false ,mDataActivity=4
06-21 12:04:27.447 D/StatusBarPolicy( 196): slotType[0]=empty
06-21 12:04:27.447 D/StatusBarService( 196): updateIcon slot=data_connection index=18 viewIndex=13 old=StatusBarIcon(pkg=com.android.systemui id=0x7f020015 level=0 visible=true num=0 ) icon=StatusBarIcon(pkg=com.android.systemui id=0x7f020015 level=0 visible=true num=0 )
06-21 12:04:27.477 D/dalvikvm( 267): GC_EXPLICIT freed 204K, 53% free 4090K/8647K, external 16896K/18944K, paused 70ms
06-21 12:04:28.468 D/PowerManagerService( 129): New lightsensor value:225, lcdValue:164
06-21 12:04:28.468 D/PowerManagerService( 129): lightSensorChangedLocked, buttonValue >= 0, mPowerState = 3
06-21 12:04:29.619 W/ActivityManager( 129): Launch timeout has expired, giving up wake lock!
06-21 12:04:29.859 W/ActivityManager( 129): Activity idle timeout for HistoryRecord{409e15c0 org.inova.mobile/.VisitInovaActivity}
06-21 12:04:34.924 D/dalvikvm( 540): GC_EXPLICIT freed 884K, 45% free 5802K/10503K, external 4915K/6227K, paused 73ms
06-21 12:04:39.919 D/dalvikvm( 267): GC_EXPLICIT freed 1K, 53% free 4089K/8647K, external 16896K/18944K, paused 54ms
06-21 12:04:44.904 D/dalvikvm( 1661): GC_EXPLICIT freed 2K, 47% free 3397K/6343K, external 0K/0K, paused 47ms
06-21 12:04:55.744 D/StatusBarPolicy( 196): onSignalStrengthsChanged
06-21 12:04:55.744 D/StatusBarPolicy( 196): iconIndex=1
06-21 12:04:55.744 V/StatusBarPolicy( 196): cdmaLevel:2;max:4
06-21 12:04:55.754 D/StatusBarPolicy( 196): iconLevel:2
06-21 12:04:55.764 D/StatusBarService( 196): updateIcon slot=phone_signal index=20 viewIndex=14 old=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 ) icon=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 )
06-21 12:04:59.338 I/InputDispatcher( 129): Application is not responding: AppWindowToken{40cf9910 token=HistoryRecord{409e15c0 org.inova.mobile/.VisitInovaActivity}}. 15015.5ms since event, 15015.4ms since wait started
06-21 12:04:59.338 I/WindowManager( 129): Input event dispatching timed out sending to application AppWindowToken{40cf9910 token=HistoryRecord{409e15c0 org.inova.mobile/.VisitInovaActivity}}
06-21 12:04:59.418 I/Process ( 129): Sending signal. PID: 7860 SIG: 3
06-21 12:04:59.418 I/dalvikvm( 7860): threadid=4: reacting to signal 3
06-21 12:04:59.448 I/dalvikvm( 7860): Wrote stack traces to '/data/anr/traces.txt'
06-21 12:04:59.448 I/Process ( 129): Sending signal. PID: 129 SIG: 3
06-21 12:04:59.448 I/dalvikvm( 129): threadid=4: reacting to signal 3
06-21 12:04:59.578 I/dalvikvm( 129): Wrote stack traces to '/data/anr/traces.txt'
06-21 12:04:59.578 I/Process ( 129): Sending signal. PID: 255 SIG: 3
06-21 12:04:59.578 I/dalvikvm( 255): threadid=4: reacting to signal 3
06-21 12:04:59.588 I/dalvikvm( 255): Wrote stack traces to '/data/anr/traces.txt'
06-21 12:04:59.588 I/Process ( 129): Sending signal. PID: 252 SIG: 3
06-21 12:04:59.588 I/dalvikvm( 252): threadid=4: reacting to signal 3
06-21 12:04:59.638 I/dalvikvm( 252): Wrote stack traces to '/data/anr/traces.txt'
06-21 12:04:59.638 I/Process ( 129): Sending signal. PID: 196 SIG: 3
06-21 12:04:59.638 I/dalvikvm( 196): threadid=4: reacting to signal 3
06-21 12:04:59.638 I/dalvikvm( 196): Wrote stack traces to '/data/anr/traces.txt'
06-21 12:05:00.088 D/dalvikvm( 129): GC_CONCURRENT freed 1756K, 31% free 9570K/13767K, external 5619K/7016K, paused 3ms+9ms
06-21 12:05:00.259 D/dalvikvm( 129): GC_EXPLICIT freed 123K, 31% free 9550K/13767K, external 5619K/7016K, paused 113ms
06-21 12:05:00.299 D/StatusBarPolicy( 196): onSignalStrengthsChanged
06-21 12:05:00.309 D/StatusBarPolicy( 196): iconIndex=1
06-21 12:05:00.309 V/StatusBarPolicy( 196): cdmaLevel:2;max:4
06-21 12:05:00.309 D/StatusBarPolicy( 196): iconLevel:2
06-21 12:05:00.309 D/StatusBarService( 196): updateIcon slot=phone_signal index=20 viewIndex=14 old=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 ) icon=StatusBarIcon(pkg=com.android.systemui id=0x7f020009 level=0 visible=true num=0 )
06-21 12:05:00.849 E/ActivityManager( 129): ANR in org.inova.mobile (org.inova.mobile/.VisitInovaActivity), time=44542709
06-21 12:05:00.849 E/ActivityManager( 129): Reason: keyDispatchingTimedOut
06-21 12:05:00.849 E/ActivityManager( 129): Load: 1.54 / 1.66 / 1.88
06-21 12:05:00.849 E/ActivityManager( 129): CPU usage from 15071ms to 0ms ago:
06-21 12:05:00.849 E/ActivityManager( 129): 0.9% 88/akmd: 0% user + 0.9% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0.8% 129/system_server: 0.4% user + 0.3% kernel / faults: 2 minor
06-21 12:05:00.849 E/ActivityManager( 129): 0.6% 68/emmc-qd: 0% user + 0.5% kernel + 0% iowait
06-21 12:05:00.849 E/ActivityManager( 129): 0% 1661/com.htc.bgp: 0% user + 0% kernel / faults: 59 minor
06-21 12:05:00.849 E/ActivityManager( 129): 0.1% 5/events/0: 0% user + 0.1% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0.1% 15/kondemand/0: 0% user + 0.1% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0% 11/bdi-default: 0% user + 0% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0% 59/atmel_wq: 0% user + 0% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0% 267/com.htc.launcher: 0% user + 0% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0% 311/com.swype.android.inputmethod:SwypeConnect: 0% user + 0% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0% 5527/com.lookout: 0% user + 0% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0% 70/kjournald: 0% user + 0% kernel + 0% iowait
06-21 12:05:00.849 E/ActivityManager( 129): 2.7% TOTAL: 1% user + 1.6% kernel
06-21 12:05:00.849 E/ActivityManager( 129): CPU usage from 918ms to 1448ms later:
06-21 12:05:00.849 E/ActivityManager( 129): 12% 129/system_server: 1.8% user + 10% kernel / faults: 3 minor
06-21 12:05:00.849 E/ActivityManager( 129): 9% 163/InputDispatcher: 0% user + 9% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 1.8% 130/HeapWorker: 1.8% user + 0% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 1.8% 3847/Binder Thread #: 0% user + 1.8% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0.8% 5/events/0: 0% user + 0.8% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0.8% 15/kondemand/0: 0% user + 0.8% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0.9% 88/akmd: 0% user + 0.9% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 0.9% 7858/akmd: 0% user + 0.9% kernel
06-21 12:05:00.849 E/ActivityManager( 129): 11% TOTAL: 3.8% user + 7.6% kernel
06-21 12:05:01.019 I/InputDispatcher( 129): Dropping event because the pointer is not down.
06-21 12:05:01.019 I/InputDispatcher( 129): Dropping event because the pointer is not down.
06-21 12:05:05.394 D/dalvikvm( 634): GC_EXPLICIT freed 10K, 47% free 2913K/5447K, external 0K/0K, paused 80ms
06-21 12:05:05.494 W/ActivityManager( 129): Force finishing activity org.inova.mobile/.VisitInovaActivity
06-21 12:05:05.494 I/Process ( 129): Sending signal. PID: 7860 SIG: 9
UPDATE
At the request of @pogo2065, I’ve attached the xmltree dump of the AndroidManifest file as extracted using the aapt tool:
N: android=http://schemas.android.com/apk/res/android
E: manifest (line=1)
A: android:versionCode(0x0101021b)=(type 0x10)0x6
A: android:versionName(0x0101021c)="1.0.6" (Raw: "1.0.6")
A: package="org.inova.mobile" (Raw: "org.inova.mobile")
E: supports-screens (line=2)
A: android:anyDensity(0x0101026c)=(type 0x12)0xffffffff
A: android:smallScreens(0x01010284)=(type 0x12)0x0
A: android:normalScreens(0x01010285)=(type 0x12)0xffffffff
A: android:largeScreens(0x01010286)=(type 0x12)0xffffffff
E: uses-sdk (line=2)
A: android:minSdkVersion(0x0101020c)=(type 0x10)0x8
E: application (line=6)
A: android:label(0x01010001)="Visit Inova" (Raw: "Visit Inova")
A: android:icon(0x01010002)=@0x7f020000
A: android:name(0x01010003)="VisitInovaApplication" (Raw: "VisitInovaApplication")
A: android:debuggable(0x0101000f)=(type 0x12)0x0
E: activity (line=10)
A: android:theme(0x01010000)=@0x7f050000
A: android:label(0x01010001)="Visit Inova" (Raw: "Visit Inova")
A: android:name(0x01010003)=".VisitInovaActivity" (Raw: ".VisitInovaActivity")
A: android:configChanges(0x0101001f)=(type 0x11)0xa0
E: intent-filter (line=11)
E: action (line=12)
A: android:name(0x01010003)="android.intent.action.MAIN" (Raw: "android.intent.action.MAIN")
E: category (line=13)
A: android:name(0x01010003)="android.intent.category.LAUNCHER" (Raw: "android.intent.category.LAUNCHER")
E: activity (line=17)
A: android:name(0x01010003)="ti.modules.titanium.map.TiMapActivity" (Raw: "ti.modules.titanium.map.TiMapActivity")
A: android:launchMode(0x0101001d)=(type 0x10)0x2
A: android:configChanges(0x0101001f)=(type 0x11)0xa0
E: uses-library (line=18)
A: android:name(0x01010003)="com.google.android.maps" (Raw: "com.google.android.maps")
E: activity (line=20)
A: android:name(0x01010003)="org.appcelerator.titanium.TiActivity" (Raw: "org.appcelerator.titanium.TiActivity")
A: android:configChanges(0x0101001f)=(type 0x11)0xa0
E: activity (line=21)
A: android:theme(0x01010000)=@0x103000f
A: android:name(0x01010003)="org.appcelerator.titanium.TiTranslucentActivity" (Raw: "org.appcelerator.titanium.TiTranslucentActivity")
A: android:configChanges(0x0101001f)=(type 0x11)0xa0
E: activity (line=22)
A: android:theme(0x01010000)=@0x103000f
A: android:name(0x01010003)="org.appcelerator.titanium.TiModalActivity" (Raw: "org.appcelerator.titanium.TiModalActivity")
A: android:configChanges(0x0101001f)=(type 0x11)0xa0
E: activity (line=23)
A: android:name(0x01010003)="ti.modules.titanium.ui.TiTabActivity" (Raw: "ti.modules.titanium.ui.TiTabActivity")
A: android:configChanges(0x0101001f)=(type 0x11)0xa0
E: activity (line=24)
A: android:name(0x01010003)="ti.modules.titanium.ui.android.TiPreferencesActivity" (Raw: "ti.modules.titanium.ui.android.TiPreferencesActivity")
E: service (line=26)
A: android:name(0x01010003)="org.appcelerator.titanium.analytics.TiAnalyticsService" (Raw: "org.appcelerator.titanium.analytics.TiAnalyticsService")
A: android:exported(0x01010010)=(type 0x12)0x0
E: uses-permission (line=31)
A: android:name(0x01010003)="android.permission.ACCESS_NETWORK_STATE" (Raw: "android.permission.ACCESS_NETWORK_STATE")
E: uses-permission (line=32)
A: android:name(0x01010003)="android.permission.WRITE_EXTERNAL_STORAGE" (Raw: "android.permission.WRITE_EXTERNAL_STORAGE")
E: uses-permission (line=33)
A: android:name(0x01010003)="android.permission.ACCESS_WIFI_STATE" (Raw: "android.permission.ACCESS_WIFI_STATE")
E: uses-permission (line=34)
A: android:name(0x01010003)="android.permission.ACCESS_COARSE_LOCATION" (Raw: "android.permission.ACCESS_COARSE_LOCATION")
E: uses-permission (line=35)
A: android:name(0x01010003)="android.permission.INTERNET" (Raw: "android.permission.INTERNET")
E: uses-permission (line=36)
A: android:name(0x01010003)="android.permission.ACCESS_FINE_LOCATION" (Raw: "android.permission.ACCESS_FINE_LOCATION")
Looks like Titanium Mobile SDK 2.1.2 and 2.2.0 have fixes for this issue.
https://jira.appcelerator.org/browse/TIMOB-9285