我使用Eclipse开发了一个Android应用程序,它可以在Android虚拟设备上完美运行,或者在启用Eclipse + USB调试模式的情况下在智能手机上运行它。
然而,当我使用签名的apk文件在我的手机上安装该应用程序,该文件位于SD卡并尝试启动它时,我收到“未找到活动 - lsp.workshop”错误,该应用程序无法启动(lsp.workshop是应用程序包名称)。
AndroidManifest.xml文件是:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="lsp.workshop"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".TwitterLogin"
android:label="@string/app_name" android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<data android:scheme="twitter" />
<data android:host="log" />
</intent-filter>
</activity>
</application>
</manifest>
我做错了什么?感谢
答案 0 :(得分:1)
附加调试器的模拟器和android的行为可能与您正常启动应用程序时的行为不同。时机不同(影响多线程和竞争条件),其他事情也可能受到影响。
但只是为了确定:
您是否在AndroidManifest.xml文件中列出了活动?
拼写是否真的正确?
如果这些问题不是问题,那么你能展示一些代码(如何启动活动?有意图吗?)并且可能是清单文件?
答案 1 :(得分:1)
使用两个意图过滤器而不是一个解决了问题:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="twitter" android:host="log" />
</intent-filter>
答案 2 :(得分:0)
导出apk时,请务必将其命名为-something.apk,即在导出应用程序时将“.apk”放在末尾(y)