[英]Is it possible for an Android app to restrict other apps to WiFi only (without root)?
[英]Android - Autostart app and restrict access to other apps
我在Android开发领域还很陌生,我有一个正在为孩子们开发的应用程序。 我希望该应用在设备启动时自行启动。 当应用程序运行时,我希望它阻止访问任何其他屏幕。 禁用主页按钮,禁止访问浏览器,设置等。
这可能吗? 我偶然发现了该链接http://www.androidsnippets.com/autostart-an-application-at-bootup ,但是有些人认为让活动自动开始并不是一种好方法。
谢谢 :-)
听起来您需要自己的启动器,因为只有启动器才能阻止访问不必要的屏幕,并且启动器会“阻止”“主页”按钮。
它还将解决“启动”问题。
您需要做的就是在AndroidManifest
声明Activity
,如下所示:
<activity
android:name="your.package.ActivityName
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
激活您的创造力,并根据需要构建启动器。
祝好运!
这是将应用程序设置为设备中的启动应用程序。创建一个类扩展BroadCast Reciever
public class BootUpReciever extends BroadcastReceiver
{
@Override
public void onReceive(final Context context, Intent intent) {
Intent i = new Intent(context, ServerPreferenceActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
向清单文件添加权限到多余的启动接收器
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
在manifest.xml中注册扩展了广播接收器的接收器
<receiver android:enabled="true" android:name="com.app.reciever.BootUpReciever">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
注意:在src文件夹中的单独程序包中创建接收器类,以实现有效的实现。
关于您的问题:
“我希望该应用在设备启动时启动。”
您可以实现一个BroadcastReceiver来捕获RECEIVE_BOOT_COMPLETED事件。 看到这篇文章 。
“当应用程序运行时,我希望它阻止访问任何其他屏幕。”
每当活动遭到破坏或暂停时,您都可以重新开始活动。 您可以在后台服务中进行检查。 检查这个职位更多。
“禁用主页按钮”
根本不可能。 您必须在这里依靠2.的结果。
“防止访问浏览器,设置等。”
与3类似-您无法避免这种情况。 但是,您可以检查您的应用程序是否位于顶部,然后重新启动。
希望这可以帮助...干杯!
您可以构建家庭应用程序 ,将其作为与用户的设备界面,从而可以管理用户体验。 在这里看看:所以问题
但是构建启动器/家庭应用程序需要承担很多责任。 您将负责所有用户的访问:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.