2012-04-27 64 views
1

我一直在试图找出这几天,无济于事。我正在开发一款Titanium的简单Android应用程序,它在iOS上完美运行。然而,当我在android上启动它时,它永远不会启动。这是我的manifest.xml:Android应用在推出时一直崩溃,没有很好的理由

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.tiki.signals" android:versionCode="1" 
    android:versionName="1"> 
    <uses-sdk android:minSdkVersion="8" /> 

    <!-- TI_MANIFEST --> 

    <application android:icon="@drawable/appicon" 
     android:label="Signals" android:name="SignalsApplication" 
     android:debuggable="false"> 

     <!-- TI_APPLICATION --> 

     <activity android:name=".SignalsActivity" 
      android:label="Signals" android:theme="@style/Theme.Titanium" 
      android:configChanges="keyboardHidden|orientation"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <activity 
     android:name="ti.modules.titanium.facebook.FBActivity" 
     android:theme="@android:style/Theme.Translucent.NoTitleBar" 
    /> 

     <activity android:name="org.appcelerator.titanium.TiActivity" 
      android:configChanges="keyboardHidden|orientation" /> 
     <activity android:name="org.appcelerator.titanium.TiTranslucentActivity" 
      android:configChanges="keyboardHidden|orientation" 
      android:theme="@android:style/Theme.Translucent" /> 
     <activity android:name="org.appcelerator.titanium.TiModalActivity" 
      android:configChanges="keyboardHidden|orientation" 
      android:theme="@android:style/Theme.Translucent" /> 
     <activity android:name="ti.modules.titanium.ui.TiTabActivity" 
      android:configChanges="keyboardHidden|orientation" /> 
     <activity android:name="ti.modules.titanium.ui.android.TiPreferencesActivity" /> 

     <service android:name="org.appcelerator.titanium.analytics.TiAnalyticsService" 
      android:exported="false" /> 
    </application> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
    <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
    <uses-permission android:name="android.permission.INTERNET"/> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 
</manifest> 

这里的logcat的:

I/ActivityManager( 81): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.tiki.signals/.SignalsActivity} from pid 176 
D/PermissionCache( 35): checking android.permission.READ_FRAME_BUFFER for uid=1000 => granted (1163 us) 
D/dalvikvm( 81): GC_FOR_ALLOC freed 842K, 14% free 11108K/12807K, paused 106ms 
I/dalvikvm-heap( 81): Grow heap (frag case) to 12.385MB for 1536016-byte allocation 
D/dalvikvm( 81): GC_FOR_ALLOC freed 1K, 13% free 12606K/14343K, paused 105ms 
W/WindowManager( 81): Failure taking screenshot for (180x300) to layer 21005 
I/ActivityManager( 81): Start proc com.tiki.signals for activity com.tiki.signals/.SignalsActivity: pid=457 uid=10040 gids={1015, 3003} 
I/dalvikvm( 457): Turning on JNI app bug workarounds for target SDK version 8... 
W/NetworkManagementSocketTagger( 81): setKernelCountSet(10040, 1) failed with errno -2 
D/dalvikvm( 81): GC_CONCURRENT freed 13K, 13% free 12619K/14343K, paused 8ms+32ms 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/TiApplication( 457): (main) [0,0] checkpoint, app created. 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
D/dalvikvm( 457): GC_CONCURRENT freed 243K, 4% free 9294K/9607K, paused 7ms+6ms 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/TiApplication( 457): (main) [682,682] Titanium 1.8.2 (2012/02/23 17:46 59b3a90) 
D/dalvikvm( 457): GC_CONCURRENT freed 422K, 5% free 9434K/9927K, paused 6ms+4ms 
I/TiApplication( 457): (main) [254,936] Titanium Javascript runtime: v8 
D/dalvikvm( 457): Trying to load lib /data/data/com.tiki.signals/lib/libstlport_shared.so 0x412a1e60 
D/dalvikvm( 457): Added shared lib /data/data/com.tiki.signals/lib/libstlport_shared.so 0x412a1e60 
D/dalvikvm( 457): No JNI_OnLoad found in /data/data/com.tiki.signals/lib/libstlport_shared.so 0x412a1e60, skipping init 
D/dalvikvm( 457): Trying to load lib /data/data/com.tiki.signals/lib/libkroll-v8.so 0x412a1e60 
I/TiRootActivity( 457): (main) [0,0] checkpoint, on root activity create, savedInstanceState: null 
D/dalvikvm( 457): Added shared lib /data/data/com.tiki.signals/lib/libkroll-v8.so 0x412a1e60 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
E/TiApplication( 457): (KrollRuntimeThread) [3551,3551] APP PROXY: [email protected] 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
D/dalvikvm( 457): GC_CONCURRENT freed 349K, 5% free 9566K/10055K, paused 7ms+6ms 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
D/dalvikvm( 457): GC_FOR_ALLOC freed 452K, 7% free 9534K/10183K, paused 84ms 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
D/TiLocation( 457): (main) [2290,5841] preferredProvider property found [null] 
D/TiLocation( 457): (main) [1,5842] accuracy property found [0] 
E/TiLocationHelper( 457): (main) [31,5873] unable to register, provider is null 
D/dalvikvm( 457): GC_FOR_ALLOC freed 105K, 7% free 9571K/10183K, paused 61ms 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
I/dalvikvm-heap( 457): Grow heap (frag case) to 10.878MB for 1536016-byte allocation 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
D/dalvikvm( 457): GC_CONCURRENT freed 1K, 6% free 11070K/11719K, paused 8ms+5ms 
I/TiRootActivity( 457): (main) [0,0] checkpoint, on root activity resume. activity = [email protected] 
V/PhoneStatusBar( 134): setLightsOn(true) 
I/Process ( 81): Sending signal. PID: 457 SIG: 3 
I/dalvikvm( 457): threadid=3: reacting to signal 3 
W/InputManagerService( 81): Starting input on non-focused client [email protected] (uid=10013 pid=176) 
I/dalvikvm( 457): Wrote stack traces to '/data/anr/traces.txt' 
D/gralloc_goldfish( 457): Emulator without GPU emulation detected. 
I/ActivityManager( 81): Displayed com.tiki.signals/.SignalsActivity: +9s553ms 
W/NetworkManagementSocketTagger( 81): setKernelCountSet(10013, 0) failed with errno -2 
D/ExchangeService( 355): Received deviceId from Email app: androidc259148960 
D/ExchangeService( 355): Reconciling accounts... 
D/dalvikvm( 81): GC_EXPLICIT freed 1712K, 23% free 11125K/14343K, paused 7ms+11ms 
W/ThrottleService( 81): unable to find stats for iface rmnet0 
W/TiAnalyticsSvc( 457): (Thread-65) [23787,23787] Analytics Service Started 
I/TiAnalyticsSvc( 457): (Thread-65) [152,23939] Sending 2 analytics events. 
W/TiAnalyticsSvc( 457): (Thread-65) [1072,25011] Stopping Analytics Service 

这里是我的tiapp.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<ti:app xmlns:ti="http://ti.appcelerator.org"> 
    <property name="ti.android.runtime">v8</property> 
    <property name="ti.android.threadstacksize" type="int">132768</property> 
    <property name="ti.android.fastdev" type="bool">false</property> 
    <sdk-version>1.8.2</sdk-version> 
    <deployment-targets> 
     <target device="mobileweb">false</target> 
     <target device="iphone">true</target> 
     <target device="ipad">true</target> 
     <target device="android">true</target> 
     <target device="blackberry">false</target> 
    </deployment-targets> 
    <id>com.tiki.signals</id> 
    <name>Signals</name> 
    <version>1.0</version> 
    <publisher>Michael</publisher> 
    <url>http://</url> 
    <description>not specified</description> 
    <copyright>2012 by meilers</copyright> 
    <icon>appicon.png</icon> 
    <persistent-wifi>false</persistent-wifi> 
    <prerendered-icon>false</prerendered-icon> 
    <statusbar-style>default</statusbar-style> 
    <statusbar-hidden>false</statusbar-hidden> 
    <fullscreen>false</fullscreen> 
    <navbar-hidden>false</navbar-hidden> 
    <analytics>true</analytics> 
    <guid>49aefe11-b922-4f04-bffd-887ed59cb5d3</guid> 
    <iphone> 
     <orientations device="iphone"> 
      <orientation>Ti.UI.PORTRAIT</orientation> 
     </orientations> 
     <orientations device="ipad"> 
      <orientation>Ti.UI.PORTRAIT</orientation> 
      <orientation>Ti.UI.UPSIDE_PORTRAIT</orientation> 
      <orientation>Ti.UI.LANDSCAPE_LEFT</orientation> 
      <orientation>Ti.UI.LANDSCAPE_RIGHT</orientation> 
     </orientations> 
    </iphone> 
    <android xmlns:android="http://schemas.android.com/apk/res/android"/> 
    <modules/> 
</ti:app> 

这到底是怎么回事?我在logcat中看不到任何错误。 VM正在关闭,没有任何理由。请帮忙!

+0

看起来像你有org/apache/commons/codec类定义了两次。你看过这个吗?也许这些已经包含在Android中。 – Steve 2012-04-27 17:10:26

+0

这几乎就像您一遍又一遍地安装软件包,但没有真正运行它,这可能是您的开发机器设置的问题。您可以断开USB电缆并从其启动器图标启动活动吗?如果失败,请重新连接电缆,运行logcat,并向我们提供上次启动尝试的输出。另外,请参阅是否可以构建并运行与Titanium无关的SDK示例之一,并假定这些示例正常,然后是没有任何个人更改的Titanium示例之一。 – 2012-04-27 17:18:12

+0

@chris:我没有连接到任何Android设备。我编辑了我的帖子,向您展示logcat的最后一次尝试。 – 2012-04-27 18:00:01

回答

2

一个项目浮现在脑海里只是看着logcat ......没有足够的记忆。你会看到记忆免费下降到3%YIKES !.通常尽量保持10%的免费空间,或者操作系统可能会进行分页,并有可能超时。

禁用应用程序中的某些功能并观察模拟器下的内存。 最好的建议将应用程序安装到实际的手机上,尽管仿真器应该能够提供逼真的效果。我不希望模拟任何硬件设备。

下面是一些转储内存使用情况的代码。你需要找出你的目标课程是什么。 在操作系统开始挑选您的应用程序之前,旧版手机的最新版本只有48MB。把代码放在Oncreate中。

Runtime rt = Runtime.getRuntime(); 
long maxMemory = rt.maxMemory(); 
Log.v("onCreate", "maxMemory:>>>>>" + Long.toString(maxMemory)); //max available memory to use 

ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE); 
int memoryClass = am.getMemoryClass(); 
Log.v("onCreate", "memoryClass:>>>>" + Integer.toString(memoryClass)); //max available you should use to keep from getting bumped off 

printl("PGM MEM FREE MB", GetInternalMemAvail()); 
printl("INTERNAL STORAGE FREE MEMORY BYTES",getmem()); 
printl("INTERNAL TOTAL MEMORY BYTES",TotalMemory()); 
printl("SD MEM FREE MB",GetSDMemAvail()); 
printl("SD MEM GB",getAvailableSpaceInGB()); 

private static void printl(String printstring,long x) 
{ 
    String temp; 
    temp=String.format(" %d",x); 
    Log.e(printstring,temp); 
}