我希望能够“持久化”我的工具活动,这样当用户点击迷你应用图标时,我的活动不必每次都重新加载。
这种行为在Tooleap搜索活动中实现,当我从任何地方重新打开搜索活动时,搜索活动将立即显示(没有加载指示符)。
我已经作为持久性启动了tooleap活动,下面是启动迷你应用程序的代码
TooleapPersistentMiniApp miniApp = new TooleapPersistentMiniApp(this, TooleapTestActivity.class);
miniApp.allowUserToDismiss(true);
miniApp.contentTitle = getResources().getString(R.string.app_name);
miniApp.contentText = getResources().getString(R.string.app_name);
miniApp.bubbleBackgroundColor = 0xFF03A9F4;
miniApp.notificationText = getResources().getString(R.string.tooleap_start_notif);
miniApp.when = new Date();
Tooleap.getInstance(this).addMiniApp(miniApp);下面是我的AndroidManifest,它与tooleap直接关联
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myapp.package"
android:installLocation="internalOnly" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<activity android:name=".TooleapTestActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:launchMode="singleInstance"
android:taskAffinity=".tooleap">
<intent-filter>
<action android:name="com.tooleap.sdk.TOOLEAP_SHOW"/>
</intent-filter>
</activity>
<service android:name="com.tooleap.sdk.TooleapAppService"/>
<service android:name="com.tooleap.sdk.TooleapUIService"
android:process=":UIService"
android:exported="true">
<intent-filter>
<action android:name="com.tooleap.sdk.BIND_UI_SERVICE" />
</intent-filter>
</service>
<receiver android:name="com.tooleap.sdk.TooleapReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REPLACED"/>
<data android:scheme="package"/>
</intent-filter>
<intent-filter>
<action android:name="com.tooleap.sdk.TOOLEAP_ACTION"/>
</intent-filter>
</receiver>
</manifest>以下是流程细节:
我在这里做错什么了?我似乎不能和Tooleap搜索活动的持久性有相同的行为。
发布于 2015-06-07 09:15:31
我是Tooleap的开发人员之一。
简短回答:每当你按下浮动气泡时,你的迷你应用程序在侧屏幕上总是有一个旋转器(加载指示器)。
长答案
旋转器只是为了表演。当您第一次按下浮动气泡时,您的活动将被创建(称为onCreate)。之后,每当打开/关闭浮动边屏幕时,都会调用onResume / onPause。
您的活动将恢复,就像任何正常的活动(不重新加载或诸如此类的)。活动恢复可能需要几百毫秒(取决于活动onResume方法中的逻辑)。在这段时间内,旋转器是显示。
备注:如果您觉得自己在很长一段时间内总是看到旋转器,请检查您的活动是否在每次关闭侧屏幕时都被破坏(onDestroy)。其中一个原因可能是在活动代码中显式调用finish()。如果调用onDestroy,下一次按下浮动气泡onCreate将再次被调用,您的应用程序可能需要更长的时间才能出现。
关于搜索迷你应用程序,它是一个特殊的浮动窗口,而不是一个经常性的活动。因为它是Tooleap的一部分,它可以在没有旋转器的情况下显示出来。
https://stackoverflow.com/questions/30688143
复制相似问题