问题描述
|
我无法让我的应用程序同时在API级别7和8中运行。当我在eclipse中从头开始项目并针对各自的API级别时,代码在两个版本中均能正常工作。但是,我的应同时运行的设置在以7为目标时会执行此操作,而在启动模拟器时以API 8进行启动。
[2011-05-24 11:47:02 - AndroidHTOnline] ------------------------------
[2011-05-24 11:47:02 - AndroidHTOnline] Android Launch!
[2011-05-24 11:47:02 - AndroidHTOnline] adb is running normally.
[2011-05-24 11:47:02 - AndroidHTOnline] Performing testapp.test.testapp activity launch
[2011-05-24 11:47:02 - AndroidHTOnline] Automatic Target Mode: Preferred AVD \'DROID\' is not available. Launching new emulator.
[2011-05-24 11:47:02 - AndroidHTOnline] Launching a new emulator with Virtual Device \'DROID\'
[2011-05-24 11:47:03 - AndroidHTOnline] New emulator found: emulator-5554
[2011-05-24 11:47:03 - AndroidHTOnline] Waiting for HOME (\'android.process.acore\') to be launched...
[2011-05-24 11:47:26 - AndroidHTOnline] HOME is up on device \'emulator-5554\'
[2011-05-24 11:47:26 - AndroidHTOnline] Uploading AndroidHTOnline.apk onto device \'emulator-5554\'
[2011-05-24 11:47:26 - AndroidHTOnline] Installing AndroidHTOnline.apk...
[2011-05-24 11:47:50 - AndroidHTOnline] Success!
[2011-05-24 11:47:50 - AndroidHTOnline] Starting activity testapp.test.testapp on device emulator-5554
[2011-05-24 11:47:52 - AndroidHTOnline] ActivityManager: [1] Killed am start -n test...
这是我的清单文件。切换目标SDK似乎无效。
<?xml version=\"1.0\" encoding=\"utf-8\"?>
<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"
package=\"testapp.test\"
android:versionCode=\"1\"
android:versionName=\"1.0\">
<uses-sdk android:minSdkVersion=\"7\" android:targetSdkVersion=\"7\" android:maxsdkVersion=\"8\" />
<uses-permission android:name=\"android.permission.INTERNET\" />
<application android:icon=\"@drawable/icon\" android:label=\"@string/app_name\" android:debuggable=\"false\" android:enabled=\"true\" android:allowBackup=\"false\" android:allowClearUserData=\"true\" android:testOnly=\"false\">
<activity android:name=\".testapp\"
android:label=\"@string/app_name\">
<intent-filter>
<action android:name=\"android.intent.action.MAIN\" />
<category android:name=\"android.intent.category.LAUNCHER\" />
</intent-filter>
</activity>
</application>
</manifest>
那么活动管理器为什么要终止该应用程序。我可以查看更详细的输出以获取更多详细信息吗?我的最小,最大和目标设置是否是我正在寻找的准确设置类型?我在Windows上运行Eclipse。我是C#程序员,并且是Android和Java的新手,所以任何技巧都将对您有所帮助。
编辑:我已经在这里发布了logcat日志文件。 http://www.strategynerd.com/log.txt我仍在浏览以尝试发现问题,如果发现有问题,将回发。
更新:似乎错误可能在日志中的此处某处发生。
05-24 18:27:08.443: INFO/installd(35): move /data/dalvik-cache/data@[email protected]@classes.dex -> /data/dalvik-cache/data@[email protected]@classes.dex
05-24 18:27:08.554: DEBUG/PackageManager(59): New package installed in /data/app/testapp.test-1.apk
05-24 18:27:10.094: INFO/ActivityManager(59): Process com.android.settings (pid 119) has died.
05-24 18:27:12.094: INFO/ActivityManager(59): Force stopping package testapp.test uid=10036
05-24 18:27:12.834: INFO/WindowManager(59): WIN DEATH: Window{450470a0 com.android.launcher/com.android.launcher2.Launcher paused=false}
解决方法
有没有我可以提供的更详细的输出
查看更多详细信息?
是的,答案是Logcat。打开该透视图并发布日志。
Is my setup for min,max and target an accurate type of setup I am looking for?
您确定需要最高版本吗?一般来说,大多数在7中开发的东西都是向前兼容的。较新的屏幕尺寸有些困难,但这是另一个问题。
您还可以在此处了解最低版本和目标版本之间的区别。
,Android应用程序通常与新版本的Android平台向前兼容,
您无需指定最高版本(强烈建议您不要使用maxSdkVersion属性)。
尝试仅指定minSdkVersion属性,然后查看它是否有效。
干杯