gpt4 book ai didi

android - 有 Intent 地运行外部后台服务

转载 作者:行者123 更新时间:2023-11-29 22:21:11 25 4
gpt4 key购买 nike

目前我有一个空白服务,最终将用于确定是否已购买许可证,此服务位于外部应用程序中,它唯一的工作是检查并验证许可证(外部应用程序:com.example .myapp.licence,主应用程序:com.example.myapp)

com.example.myapp.licence> LicenceService.java:

public class LicenceService extends Service {

@Override
public IBinder onBind(Intent intent) {
return null;
}

@Override
public void onCreate() {

}

@Override
public void onStart(Intent intent, int startid) {

}
}

com.example.myapp.licence>AndroidManifest.xml:

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

<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".My3DroidPaidLicenceActivity"
android:label="@string/app_name">
</activity>
<service android:enabled="true" android:name=".LicenceService" />
</application>
</manifest>

但是当从我的主应用程序中调用以下内容时,此服务会强制关闭...

com.example.myapp > MainActivity.java:

 Intent intent = new Intent();
intent.setClassName("com.example.myapp.licence", "com.example.myapp.licence.LicenceService");

List<ResolveInfo> list = getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);

if (list.size() > 0) {
startActivity(intent);
}

谁能告诉我这是为什么?

(如果我没有很好地解释任何事情,我深表歉意)

最佳答案

替换

    List<ResolveInfo> list = getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);

if (list.size() > 0) {
startActivity(intent);
}

startService( intent );

关于android - 有 Intent 地运行外部后台服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7138893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com