[英]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.