android 8 1 app自我公升級

2021-09-26 08:19:02 字數 2014 閱讀 5896

1、許可權:

2、動態申請

a、檔案讀寫許可權:

//在這裡動態申請檔案讀寫許可權

if (build.version.sdk_int > 23) else

//在大於23的android版本中,檔案讀寫需要動態申請許可權

private void verifystoragepermissions() , 1);

} else

}}

@override

public void onrequestpermissionsresult(int requestcode, @nonnull string permissions, @nonnull int grantresults) else

break;

default:

break;

}}

if (build.version.sdk_int >= build.version_codes.o)  else 

}

@requiresapi(api = build.version_codes.o)

private boolean ishasinstallpermissionwitho(context context)

return context.getpackagemanager().canrequestpackageinstalls();

}

/**

* 開啟設定安裝未知**應用許可權介面

** @param context

*/@requiresapi(api = build.version_codes.o)

private void startinstallpermissionsettingactivity(context context)

}

安裝apk的**:

log.e("install","new version" + apkpath);

intent intent = new intent(intent.action_install_package);

if(build.version.sdk_int>= build.version_codes.n)

intent.setflags(intent.flag_grant_read_uri_permission);

intent.addflags(intent.flag_activity_new_task);

}else

context.startactivity(intent);

}或者:

/**

* 安裝apk

** @param context

* @param apkpath

*/public static void installapk(context context, string apkpath)

file file = new file(apkpath);

intent intent = new intent(intent.action_view);

//判讀版本是否在7.0以上

if (build.version.sdk_int >= 24) else

context.startactivity(intent);

}

註冊provider:

name 可以用標準的v4 provider。

res下面建立xml  / file_paths.xml:(叫什麼檔案都可以,但是和註冊的地方要一致)

<?xml version="1.0" encoding="utf-8"?>

注1:因為我的**是在試驗中生成的,所以有的地方對應不一致,注意修改。

Android使用廣播實現app開機自啟動

1.在專案中新建乙個接收廣播的類startbootcomplete,繼承broadcastreceiver import android.content.broadcastreceiver import android.content.context import android.content.i...

android 8 1 VTS環境配置

一 如何確保gsi版本的正確性,刷入方法的正確性?二 遇到vts環境下無法執行case情況如果排查 1.run vts command,在vts環境下跑 我這邊vts測試環境配置如下 python版本 2.7.13 64bit python安裝完之後記得要在cmd中執行 pip install vi...

Android 8 1 螢幕旋轉問題

開發中遇到乙個問題,在相機cameraactivity設定了setrequestedorientation activityinfo.screen orientation landscape cameraactivity是橫屏展示。從a activity portrait 開啟b cameraact...