Open6
chrome 拡張機能作ったときにハマったこと
URL への accessにも パーミッションがいる
host_permission
解決
chrome.scripting.executeScript の使い方
この2つを見てなんとか
基本的にはこのリファレンスを見るべき
拡張機能のアイコンをクリック時にイベントを発火させる
chrome.action.onClicked
chrome.action.onClicked.addListener(function () {
// function
});
タブにURLが設定されたとき
chrome.tabs.onUpdated
chrome.tabs.onUpdated.addListener(async (tabId, changeInfo, tab) => {
// changeInfo.status にはタブの読み込み状態が入っているので、読み込み完了したら何か処理をするといったことができる
if (changeInfo.status != "complete") {
return
}
// 読み込み完了後にやりたい処理
// 読み込み先が google 検索だったら…
const tabURL = tab.url
if (tabURL.indexOf('https://www.google.com') > -1) {
// function
}
}
manifest.json にパーミッションの追加が必要
"permissions": [
"tabs",
}
特定のURL(今回だとwww.google.com)を開いたらといった処理をしたい場合、host_permissions の追加も必要
"host_permissions": [
"*://www.google.com/*"
]
chrome でログインしているユーザの情報を取得する
chrome.identity.getProfileUserInfo
// { accountStatus: "ANY" } を 引数にわたすことで同期していないアカウントでも取得できる
// デフォルトはaccountStatus: SYNC
chrome.identity.getProfileUserInfo({ accountStatus: "ANY" }, function (accountInfo) {
}