在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Android-設置APP開機自啟和隱藏導航欄/狀態欄方法

觸覺智能 ? 2024-07-29 18:14 ? 次閱讀

本文適用于觸覺智能所有支持Android11系統的開發板設置APP開機自啟和隱藏導航欄/狀態欄。觸覺智能的Purple Pi OH鴻蒙開源主板,是華為Laval官方社區主薦的一款鴻蒙開發主板。

wKgZomanareAN4ARAAN6bAkt-Xs526.png

wKgZomanar-ATl3gAAScXGBaR98595.png

該主板主要針對學生黨,極客,工程師,極大降低了開源鴻蒙開發者的入門門檻,具有以下幾點優勢:

支持開源鴻蒙/Linux /Andriod 11/麒麟,兼容樹莓派 ;

四核A55,最高1.8G主頻,Mali G52-2EE GPU ;

支持OpenGL/CL/Vulkan/1T NPU/8M ISP ;

支持TensorFlow/MXNet/PyTorch/ Caffe ;

支持1*千兆以太網、3*USB2.0、1*USB3.0、3*UART、2*SPI、2*I2C、28*GPIO、1*MIPI DSI、1*HDMI ;

支持OpenHarmony3.2/4.0/4.1版本,開放SDK源代碼 ;

活躍的開發者社區, 更多牛人在線技術支持 ;

超小尺寸,極致性價比,只需249元 ;


一、APP自啟


1.1 添加自啟服務

修改文件:

frameworks\base\core\java\com\android\internal\app\ResolverActivity.java

--- a/frameworks/base/core/java/com/android/internal/app/ResolverActivity.java +++ b/frameworks/base/core/java/com/android/internal/app/ResolverActivity.java @@ -101,6 +101,10 @@ import java.util.List; import java.util.Objects; import java.util.Set; +import java.util.concurrent.Executor; +import java.util.function.Consumer; +import android.os.SystemProperties; +import android.app.role.RoleManager; /** * This activity is displayed when the system attempts to start an Intent for @@ -341,6 +345,18 @@ public class ResolverActivity extends Activity implements protected void onCreate(Bundle savedInstanceState, Intent intent, CharSequence title, int defaultTitleRes, Intent[] initialIntents, List rList, boolean supportsAlwaysUseOption) { + + //by Lyle,220923 + String LauncherPkg = SystemProperties.get("persist.sys.def_launherpag"); + if(LauncherPkg!=null/* && !isDefaultLauncher(this,LauncherPkg)*/){ + Log.v("defaultLauncher","-----found default launcher pkg:"+LauncherPkg); + setDefaltLauncher(this,LauncherPkg); + startDefaultLauncher(this,LauncherPkg); + finish(); + return; + } + //end + setTheme(appliedThemeResId()); super.onCreate(savedInstanceState); @@ -433,6 +449,47 @@ public class ResolverActivity extends Activity implements intent.getAction() + ":" + intent.getType() + ":" + (categories != null ? Arrays.toString(categories.toArray()) : "")); } + + + public void setDefaltLauncher(Context context, String packageName) {//by Lyle,220923 + String roleName = "android.app.role.HOME"; + boolean add = true; + int flags = 0; + UserHandle user = android.os.Process.myUserHandle(); + + RoleManager roleManager = context.getSystemService(RoleManager.class); + Executor executor = context.getMainExecutor(); + Consumer< Boolean > callback = successful -> { + if (successful) { + Log.v("defaultLauncher","set Defalt Launcher successful" ); + } else { + Log.v("defaultLauncher","set Defalt Launcher failed "); + } + }; + roleManager.addRoleHolderAsUser(roleName, packageName, flags, user, executor, callback); + } + + public void startDefaultLauncher(Context context, String packageName) { + Intent intent = new Intent(); + PackageManager pm = context.getPackageManager(); + intent = pm.getLaunchIntentForPackage(packageName); + if (intent != null) + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + try { + context.startActivity(intent); + } catch (Exception e) { + Log.v("defaultLauncher","start Default Launcher failed,not find package:"+packageName ); + } + } + + public boolean isDefaultLauncher(Context context,String launcherPkg){ + Intent intent = new Intent(Intent.ACTION_MAIN); + intent.addCategory(Intent.CATEGORY_HOME); + ResolveInfo resolveInfo = context.getPackageManager().resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY); + String currentHomePackage = resolveInfo.activityInfo.packageName; + Log.v("defaultLauncher","-currentHomePackage:"+currentHomePackage); + return launcherPkg.equals(currentHomePackage); + } private boolean isIntentPicker() { return getClass().equals(ResolverActivity.class);


1.2 添加APP

將需要自啟的APP放置
device/rockchip/rk356x/rk3566_r/preinstall_del/目錄下

(沒有preinstall_del目錄就手動創建一個即可),并添加以下文件:

Android.mk

xxx.apk(APP)

preinstall.mk

Android.mk文件內容:

include $(call all-subdir-makefiles)
preinstall.mk文件內容:

PRODUCT_PACKAGES += neu

注意:

neu為APP名字,例如neu.apk。

該目錄也是APK的預安裝目錄,如果有新的APK要預安裝,可把APK拷貝到preinstall_del/目錄下,并且把APK名字添加到preinstall.mk文件即可。

1.3 添加APP包名

修改文件:
device/rockchip/rk356x/rk3566_r/rk3566_r.mk
例如包名為:
com.mdptech.neuronappandroidhu

--- a/device/rockchip/rk356x/rk3566_r/rk3566_r.mk +++ b/device/rockchip/rk356x/rk3566_r/rk3566_r.mk @@ -46,4 +46,5 @@ PRODUCT_PROPERTY_OVERRIDES += persist.bt.power.down=true PRODUCT_PROPERTY_OVERRIDES += persist.sys.timezone=Asia/Shanghai PRODUCT_PROPERTY_OVERRIDES += ro.vendor.hdmirotationlock=true #PRODUCT_PROPERTY_OVERRIDES += vendor.hwc.device.primary=HDMI-A-1 PRODUCT_PROPERTY_OVERRIDES += vendor.hwc.device.primary=DSI +PRODUCT_PROPERTY_OVERRIDES += persist.sys.def_launherpag=com.mdptech.neuronappandroidhu


包名命令行方式查看:pm list package -3,修改后 make 編譯源碼即可。

二、修改導航欄/狀態欄


2.1 導航欄

修改文件:

frameworks/base/packages/SystemUI/res/layout/navigation_bar.xml

--- a/frameworks/base/packages/SystemUI/res/layout/navigation_bar.xml +++ b/frameworks/base/packages/SystemUI/res/layout/navigation_bar.xml @@ -22,6 +22,7 @@ xmlns:systemui="http://schemas.android.com/apk/res-auto" android:layout_height="match_parent" android:layout_width="match_parent" + android:visibility="gone" android:background="@drawable/system_bar_background"> + android:layout_height="match_parent" + android:visibility="gone"/>


2.2 狀態欄

修改文件:

frameworks/base/packages/SystemUI/res/layout/status_bar.xml

--- a/frameworks/base/packages/SystemUI/res/layout/status_bar.xml +++ b/frameworks/base/packages/SystemUI/res/layout/status_bar.xml @@ -26,6 +26,7 @@ android:id="@+id/status_bar" android:orientation="vertical" android:focusable="false" + android:visibility="gone" android:descendantFocusability="afterDescendants" android:accessibilityPaneTitle="@string/status_bar" >


修改后重新make編譯即可。

Purle Pi OH已過XTS兼容性認證

wKgaomana0GAWG3YAAHmBqy6zPY407.png
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式硬件
    +關注

    關注

    1

    文章

    929

    瀏覽量

    8355
  • 鴻蒙開發板
    +關注

    關注

    1

    文章

    23

    瀏覽量

    4527
  • OpenHarmony
    +關注

    關注

    25

    文章

    3730

    瀏覽量

    16424
  • RK3566
    +關注

    關注

    0

    文章

    147

    瀏覽量

    4918
收藏 人收藏

    評論

    相關推薦

    LABVIEW調用EXCEL時不在狀態欄顯示?

    如何讓labview在調用excel時不在狀態欄顯示圖標,不是最小化狀態欄,是完全不要出現。最小化顯示狀態期望狀態
    發表于 12-25 11:22

    如何解決ubuntu的桌面沒有ubuntu狀態欄的問題?

    燒錄OK3399的OK3399-desktop-release/Image/目錄下自帶的upgrade.img后,系統可以正常啟動,桌面上的圖標正常,但啟動后沒有看到狀態欄,不知道是這個image專門這樣設計將狀態欄隱藏掉了,還
    發表于 12-30 07:26

    請問系統下方的導航如何隱藏?

    如題,根據需求APP需要全屏顯示,但是現在導航常駐在下面。如何能隱藏導航,在下方邊緣上滑時才
    發表于 12-31 07:52

    ubuntu的桌面沒有ubuntu的狀態欄是為什么?

    [td]你好,燒錄OK3399的OK3399-desktop-release/Image/目錄下自帶的upgrade.img后,系統可以正常啟動,桌面上的圖標正常,但啟動后沒有看到狀態欄,不知道是這個image專門這樣設計將狀態欄隱藏
    發表于 01-13 09:35

    怎樣去隱藏Android 8.1定制系統的導航狀態欄顯呢

    怎樣去隱藏Android 8.1定制系統的導航狀態欄顯呢?
    發表于 02-15 06:51

    請問RK3288如何添加隱藏狀態欄和虛擬按鍵的選項?

    請問RK3288如何添加隱藏狀態欄和虛擬按鍵的選項?
    發表于 03-03 07:53

    RK3288如何隱藏底部狀態欄截屏按鈕?

    RK3288如何隱藏底部狀態欄截屏按鈕?
    發表于 03-03 07:30

    如何去隱藏RK3399 Android7.1的導航

    如何去隱藏RK3399 Android7.1的導航呢?有何方法
    發表于 03-04 08:40

    怎樣在android系統設置中添加一個隱藏底部系統導航的功能呢

    怎樣在android系統設置中添加一個顯示選項呢?怎樣在android系統設置中添加一個隱藏底部系統導航
    發表于 03-10 07:53

    RK3399電池電量圖標在狀態欄的顯示和隱藏補丁

    想要把狀態欄上的電池圖標隱藏起來,把setImageDrawable(null); 注釋// else if (tileSpec.equals("battery"
    發表于 11-21 17:51

    創建與使用菜單、工具狀態欄

    大多數基于Windows的應用程序均使用菜單、工具狀態欄。其中,用戶通過菜單及工具實現各種期望地操作;使用狀態欄獲得系統以及軟件的狀態
    發表于 08-23 11:19 ?22次下載

    Android 仿谷歌側邊導航源碼

    Android 仿谷歌側邊導航源碼
    發表于 03-19 11:23 ?1次下載

    這款越獄插件可以把iPhone狀態欄隱藏起來

    盡管狀態欄非常重要,但是它并不需要一直顯示在 iPhone 屏幕的頂部。
    發表于 03-09 15:15 ?2407次閱讀

    谷歌正在測試隱藏 PWA 應用的狀態欄 或很快移除

    —— 在最新的體驗版本中,谷歌正在測試隱藏 PWA 應用的狀態欄。當你將鼠標指針懸停在網頁鏈接上時,原本可在窗口底部狀態欄顯示的完整鏈接信息已不復存在。 長久以來,狀態欄是幫助用戶在
    的頭像 發表于 01-18 17:24 ?1978次閱讀

    瑞芯微RK3566/RK3568 Android11下該如何默認屏蔽導航/狀態欄?看這篇文章就懂了

    本文介紹瑞芯微RK3566/RK3568在Android11系統默認屏蔽導航/狀態欄方法,觸覺智能的Purple Pi OH鴻蒙開發板演示
    的頭像 發表于 10-30 18:26 ?514次閱讀
    瑞芯微RK3566/RK3568 <b class='flag-5'>Android</b>11下該如何默認屏蔽<b class='flag-5'>導航</b><b class='flag-5'>欄</b>/<b class='flag-5'>狀態欄</b>?看這篇文章就懂了
    主站蜘蛛池模板: 末发育娇小性色xxxxx视频| 人人骚| dy888午夜秋霞影院不卡| 综合激情网站| 久久成人网18网站| 国模吧新入口| 毛片网站网址| 日本三级在线观看免费| 尤物视频黄| 欧洲精品不卡1卡2卡三卡| 澳门久久| 免费日本黄色网址| 操夜夜| 一区二区三区四区视频在线观看 | 免费爱爱视频| 黑人破乌克兰美女处| 97综合| 丁香六月在线观看| 夜夜做夜夜爽| 韩彩英三级无删版甜性涩爱| 黄网页在线观看| 男啪女视频免费观看网站| 亚洲一区二区三| 亚洲区在线播放| 99精品热视频| 一级毛片视屏| 色多多视频在线观看免费大全| 四虎在线观看| 五月天六月丁香| 亚洲va久久久噜噜噜久久狠狠 | 1000又爽又黄禁片在线久| 亚洲a网| 嘿嘿嘿视频在线观看| 国产做爰一区二区| 四虎成人精品在永久在线观看| 性欧美高清视频| 免费人成黄页在线观看日本| 1000部啪啪未满十八勿入| 国产综合在线观看| 男女在线观看视频| 69久久夜色精品国产69小说|