首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何坚持我的活动像“搜索活动”在图莱普?

如何坚持我的活动像“搜索活动”在图莱普?
EN

Stack Overflow用户
提问于 2015-06-06 22:22:13
回答 1查看 127关注 0票数 2

我希望能够“持久化”我的工具活动,这样当用户点击迷你应用图标时,我的活动不必每次都重新加载。

这种行为在Tooleap搜索活动中实现,当我从任何地方重新打开搜索活动时,搜索活动将立即显示(没有加载指示符)。

我已经作为持久性启动了tooleap活动,下面是启动迷你应用程序的代码

代码语言:javascript
复制
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直接关联

代码语言:javascript
复制
<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>

以下是流程细节:

  1. 我点击了miniApp图标
  2. 打开侧边栏并显示加载指示符。
  3. 加载完成后,tooleap显示我的TooleapTestActivity
  4. 我向左滑动以隐藏tooleap侧边栏,tooleap显示另一个加载指示符。
  5. 重复步骤1 :)

我在这里做错什么了?我似乎不能和Tooleap搜索活动的持久性有相同的行为。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-07 09:15:31

我是Tooleap的开发人员之一。

简短回答:每当你按下浮动气泡时,你的迷你应用程序在侧屏幕上总是有一个旋转器(加载指示器)。

长答案

旋转器只是为了表演。当您第一次按下浮动气泡时,您的活动将被创建(称为onCreate)。之后,每当打开/关闭浮动边屏幕时,都会调用onResume / onPause

您的活动将恢复,就像任何正常的活动(不重新加载或诸如此类的)。活动恢复可能需要几百毫秒(取决于活动onResume方法中的逻辑)。在这段时间内,旋转器是显示。

备注:如果您觉得自己在很长一段时间内总是看到旋转器,请检查您的活动是否在每次关闭侧屏幕时都被破坏(onDestroy)。其中一个原因可能是在活动代码中显式调用finish()。如果调用onDestroy,下一次按下浮动气泡onCreate将再次被调用,您的应用程序可能需要更长的时间才能出现。

关于搜索迷你应用程序,它是一个特殊的浮动窗口,而不是一个经常性的活动。因为它是Tooleap的一部分,它可以在没有旋转器的情况下显示出来。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30688143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档