未找到服务意图的Android插件

时间:2016-11-16 01:34:03

标签: java c# android android-studio unity3d

我对Android的开发有点新意,但我觉得我已经搜索了很多论坛并尝试了我能找到的所有内容,但无济于事。

无论如何,我正在尝试为我的Unity项目构建Android插件,基本上我想从Unity启动Android服务。好像我已经把所有的鸭子连成一排,但是当它启动服务时,我在Android Monitor LogCat上收到以下错误消息:

 Unable to start service Intent{ cmd=com.activetime.androidplugin/.services.StepsService } U=0; not found

我怀疑是" /"介于" androidplugin"和" .services"并不是想在那里,这就是它无法找到服务的原因,但我不能为我的生活找出原因。我已经看到其他类似的问题,但没有一个解决方案似乎有效;或许合并清单存在一些问题?

无论如何,这里是来自Android Studio的Java类:

private static DBReader instance;

     public DBReader(){
         this.instance = this;
     }

     public static DBReader instance(){
         if(instance == null){
             instance = new DBReader();
         }
         return instance;
     }

     public void startStepsService(Activity unityActivity){
         unityActivity.startService(new Intent(unityActivity, StepsService.class));
     }

}

然后是Unity中的C#:

void Start(){
     #if UNITY_ANDROID

     using(AndroidJavaClass activityClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer")) {
         activityContext = activityClass.GetStatic<AndroidJavaObject>("currentActivity");
     }

     using(AndroidJavaClass pluginClass = new AndroidJavaClass("com.activetime.androidplugin.DBReader")) {
         if(pluginClass != null) {
             databaseplugin = pluginClass.CallStatic<AndroidJavaObject>("instance");
             databaseplugin.Call("startStepsService", activityContext);
         }
     }

     #endif

 }

最后我的Android Studio XML清单:

 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 package="com.activetime.androidplugin">

 <application android:allowBackup="true" android:label="@string/app_name"
     android:supportsRtl="true">

     <service
         android:name="com.activetime.androidplugin.services.StepsService">
     </service>

 </application>

0 个答案:

没有答案