我正在开发app locker app。 该应用程序已完成初次使用,具有非常基本的功能。 我在AVD [Android 4.3]中尝试过,它运行得很好。我的备份设备与Generic Android 4.0.4也很适合使用该应用程序。 但运气不好,我的应用程序将无法在我的三星Galaxy S Duos上运行Android 4.0.4以及三星Galaxy tab 3 T311。
编辑: 我的问题是如何在三星设备中获取运行任务信息,以便我的应用可以检查是否已启动锁定应用,如果是,则锁屏出现要求输入密码。
如果其他品牌如HTC和LG也需要任何此类额外许可或方法,请告诉程序。
这是我的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ic.lunar.applocker"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="18" />
<uses-permission
android:name="android.permission.GET_TASKS">
</uses-permission>
<uses-permission
android:name="android.permission.READ_LOGS">
</uses-permission>
<uses-permission
android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<application
android:icon="@drawable/launcher_icon"
android:label="@string/app_name"
android:name="ic.lunar.applocker.AppLockerApplication"
android:allowBackup="true" >
<activity android:name="ic.lunar.applocker.AppLockerActivity"
android:label="@string/app_name"
android:launchMode="singleInstance"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="ic.lunar.applocker.AppLockerPreferenceActivity"
android:label="@string/appLockerPreferenceActivityName"
android:screenOrientation="portrait">
</activity>
<activity
android:name="ic.lunar.applocker.ApplicationListActivity"
android:label="@string/appLockerPreferenceActivityName">
</activity>
<service
android:name="ic.lunar.applocker.DetectorService">
</service>
<activity
android:name="ic.lunar.applocker.LockScreenActivity"
android:noHistory="true"
android:launchMode="singleInstance"
android:excludeFromRecents="true"
android:screenOrientation="portrait"/>
<receiver
android:name="ic.lunar.applocker.StartupServiceReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<action android:name="android.intent.action.MY_PACKAGE_REPLACED"/>
<action android:name="android.intent.action.USER_PRESENT"/>
</intent-filter>
</receiver>
</application>
</manifest>
答案 0 :(得分:2)
不建议您使用的API。由于API尚未设计可行,因此您必须忍受这种不完美。引用API文档:“注意:此方法仅用于调试和呈现任务管理用户界面。这绝不应该用于应用程序中的核心逻辑,例如根据此处找到的信息在不同行为之间做出决定这种用途不受支持,将来很可能会破坏。例如,如果多个应用程序可以同时主动运行,那么为了控制流程而对此处数据含义的假设将是不正确的。“
此外,我一直在使用相同的API,我发现它一直不起作用。