જ્યારે આ ઇવેન્ટ્સ પસંદ કરેલી પ્રોક્સી લાગુ કરવાની હોય, ત્યારે Manifest V3 સેવા વર્કરના ટોચના સ્તરે onStartup અને onInstalled સિંક્રનસ રીતે નોંધો. જાણી જોઈને એક જ રૂટ પર નિશ્ચિત એક્સટેન્શન માટે:

function applyProxy() {
  chrome.proxy.settings.set({
    value: {
      mode: 'fixed_servers',
      rules: {
        singleProxy: {
          scheme: 'http',
          host: 'proxy.example',
          port: 8080,
        },
      },
    },
    scope: 'regular',
  }, () => {
    if (chrome.runtime.lastError) {
      console.error(chrome.runtime.lastError.message);
    }
  });
}

chrome.runtime.onStartup.addListener(applyProxy);
chrome.runtime.onInstalled.addListener(applyProxy);

manifest એ પ્રોક્સી પરવાનગી જાહેર કરવી જોઈએ અને આ બેકગ્રાઉન્ડ વર્કરનું નામ આપવું જોઈએ. પ્રોક્સી પ્રમાણીકરણ વિનાના મંજૂર જાહેર બ્રાઉઝિંગ રૂટ માટે, એન્ડપોઇન્ટને HTTP પ્રોક્સી સૂચિમાંથી કોઈ ઉમેદવાર સાથે બદલો અને પોર્ટ પૂર્ણાંક રાખો.

onStartup એ એક્સટેન્શન ઇન્સ્ટોલ હોય તેવા સમયે પ્રોફાઇલ સ્ટાર્ટઅપ છે. onInstalled માં અપડેટ્સનો પણ સમાવેશ થાય છે, જેમાં અનપેક્ડ એક્સટેન્શન ફરી લોડ કરવાનું પણ અપડેટ ગણાય છે. વિન્ડો બનવાની ઇવેન્ટ દરેક વિન્ડોનું વર્ણન કરે છે અને એક જ સેશનમાં વારંવાર થઈ શકે છે.

જો એક્સટેન્શનમાં સાચવેલી પ્રોફાઇલ અથવા બંધ કરવાનો સ્વિચ હોય, તો હેન્ડલરને દરેક અપડેટ પર હાર્ડકોડ કરેલું ડિફોલ્ટ ફરી સેટ કરવાને બદલે તે પસંદગી લોડ કરીને લાગુ કરવા દો. શ્રોતા નોંધણી ટોચના સ્તરે જ રહે છે; Chrome જ્યારે હેન્ડલરને બોલાવે ત્યારે અસિંક્રોનસ કામ શરૂ થઈ શકે છે.

વિકાસ દરમિયાન ઇન્સ્ટોલેશન અને પ્રોફાઇલ સ્ટાર્ટઅપ અલગ-અલગ ચકાસો, દરેક માટે કન્ફિગરેશનનું પરિણામ તપાસીને. આ બે ઇનિશિયલાઇઝેશન માર્ગ છે, બીજી વિન્ડો ખોલીને મળતો પુરાવો નથી.

સંબંધિત લેખો