Upgrade to Pro — share decks privately, control downloads, hide ads and more …

アンテナピクトをカスタマイズしてみよう

 アンテナピクトをカスタマイズしてみよう

2018/5/19開催 OSC名古屋2018で発表したスライドです。

umikaki

May 19, 2018
Tweet

More Decks by umikaki

Other Decks in Programming

Transcript

  1. "OESPJEͷΞϯςφϐΫτΛ
    ΧελϚΠζͯ͠ΈΑ͏
    ʢ౔ʣ
    ౦ւಓΒ͙-JOVYϥΠτχϯάτʔΫେձˏ௒͋ͻΔম͖߹ઓਧ্ͷਞ
    !VNJLBLJ
    ɹIUUQTNBTUPEPOUSBJOJOGP!VNJLBLJ

    View full-size slide

  2. ໨࣍
    ɹࣗݾ঺հ
    ɹΞϯςφϐΫτͬͯԿʁ
    ɹΞϯςφϐΫτΛΧελϚΠζ͢Δʹ͸ʁ
    ɹΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    ɹࠓޙͷల๬
    ɹ·ͱΊ


    View full-size slide

  3. ࣗݾ঺հ
    ͏Έ͔͖ʢ!VNJLBLJʣ
    ๏ ͱ͋ΔձࣾͷϓϩάϥϚʔ
    ๏ ओʹϞόΠϧϓϥοτϑΥʔϜͷΞϓϦ։ൃͯ͠·͢
    ๏ ࠷ۙ͸"OESPJEͦͷ΋ͷΛΧελϚΠζ͢Δ͜ͱʹϋϚΔ
    ๏ NBTUPEPOͷḉཱͯ·ͨ͠

    IUUQTNBTUPEPOUSBJOJOGPˡࣗḉ


    View full-size slide

  4. ΞϯςφϐΫτͬͯԿʁ

    View full-size slide

  5. ΞϯςφϐΫτͬͯԿʁ
    ͲͷϝʔΧʔͷΞΠίϯͰ͠ΐ͏ʁ


    ΞϯςφϐΫτʜݱࡏͷ઀ଓి೾ঢ়گΛදࣔ͢Δ΋ͷ

    View full-size slide

  6. ΞϯςφϐΫτΛΧελϚΠζ͢Δʹ͸ʁ

    View full-size slide

  7. ΞϯςφϐΫτΛΧελϚΠζ͢Δʹ͸ʁ
    طଘͷ30.ͷ4ZTUFN6*BQLΛٯίϯύΠϧ
    ‎ 0SFPҎ߱͸4ZTUFN6*BQL͕PEFYԽ͞Ε͓ͯΓɺ

    ٯίϯύΠϧ͕ࠔ೉
    ιʔείʔυΛมߋ͠Ϗϧυ
    ‎ Ϗϧυ͢Δʹ͸ɺͦΕͳΓͷεϖοΫͷϚγϯ͕ඞཁ

    ˞Ϗϧυํ๏ʹ͍ͭͯ͸ɺ΄ͨࢯͷϒϩάΛࢀর

    ɹʢʮ"OESPJEϏϧυʯͰάάΕ͹ग़͖ͯ·͢ʜʣ


    View full-size slide

  8. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏

    View full-size slide

  9. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    ΞϯςφϐΫτͷॲཧ͸4ZTUFN6*ʹهࡌ

    ˞-JOFBHF04ͷιʔεɿIUUQTHJUIVCDPN-JOFBHF04BOESPJE@GSBNFXPSLT@CBTF
    ΞϯςφϐΫτͷΞΠίϯɿQBDLBHFT4ZTUFN6*SFTESBXBCMF
    ΞΠίϯͷ഑ஔɿQBDLBHFT4ZTUFN6*SFTMBZPVU
    ΞΠίϯͷදࣔॲཧɿQBDLBHFT4ZTUFN6*TSDDPNBOESPJETZTUFNVJTUBUVTCBS
    4JHOBM$MVTUFS7JFXKBWB

    QBDLBHFT4ZTUFN6*TSDDPNBOESPJETZTUFNVJTUBUVTCBS
    QPMJDZ.PCJMF4JHOBM$POUSPMMFSKBWB


    View full-size slide

  10. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    ௨৴छผΞΠίϯ

    QBDLBHFT4ZTUFN6*SFTESBXBCMFҎԼ


    ˡYΞΠίϯ
    ˡ(ΞΠίϯ
    ˡ(ΞΠίϯ
    ˡ(ΞΠίϯ
    ˡ&ΞΠίϯ
    ˡ(ΞΠίϯ
    ˡ)ΞΠίϯ
    ˡ)ΞΠίϯ
    ˡ-5&ΞΠίϯ
    ˡ-5&ΞΠίϯ

    View full-size slide

  11. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    ֤ΞΠίϯ͸9.-ʢϕΫλʔը૾ʣͰهࡌ
    ‣ "OESPJE4UVEJPΛ༻͍ͯ47(͔Β9.-ʹม׵͢Δ
    ࢀߟɿ͞·͟·ͳີ౓ʹద༻ՄೳͳϕΫλʔάϥϑΟοΫͷ௥Ճc"OESPJE%FWFMPQFS

    ɹɹɹɹIUUQTEFWFMPQFSBOESPJEDPNTUVEJPXSJUFWFDUPSBTTFUTUVEJP IMKB



    View full-size slide

  12. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    ి೾ڧ౓ΞΠίϯ͸+BWBͰ࣮૷͞Ε͍ͯΔʂʂ
    ‣ QBDLBHFT4ZTUFN6*TSDDPNBOESPJETZTUFNVJTUBUVTCBSQIPOF
    4JHOBM%SBXBCMFKBWB


    վ଄͢Δͷ͸ࢸ೉ͷۀʂʂ

    View full-size slide

  13. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    ΞΠίϯͷ഑ஔ

    QBDLBHFT4ZTUFN6*SFTMBZPVUҎԼ


    ˢϞόΠϧճઢͷσʔλ௨৴ϐΫτͱΞϯςφϐΫτͷ഑ஔΛઃఆ
    ˢ8J'JϐΫτͱΞϯςφϐΫτͷ഑ஔΛઃఆ
    ˢTJHOBM@DMVTUFS@WJFXYNM
    ˣNPCJMF@TJHOBM@HSPVQYNM

    View full-size slide

  14. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    android:id="@+id/wifi_combo"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    >
    android:theme="?attr/lightIconTheme"
    android:id="@+id/wifi_signal"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    />
    android:theme="?attr/darkIconTheme"
    android:id="@+id/wifi_signal_dark"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:alpha="0.0"
    />
    android:id="@+id/wifi_inout"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    />


    android:id="@+id/mobile_signal_group"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    >



    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/signal_cluster"
    android:layout_height="match_parent"
    android:layout_width="wrap_content"
    android:gravity="center_vertical"
    android:orientation="horizontal"
    android:paddingEnd="@dimen/signal_cluster_battery_padding"
    >

    android:layout_height="17dp"
    android:layout_width="wrap_content">
    android:id="@+id/wifi_in"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:src="@drawable/ic_activity_down"
    android:visibility="gone"
    android:paddingEnd="2dp"
    />
    android:id="@+id/wifi_out"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:src="@drawable/ic_activity_up"
    android:paddingEnd="2dp"
    android:visibility="gone"
    />

    TJHOBM@DMVTUFS@WJFXYNM


    8J'J௨৴ঢ়گΞΠίϯ
    8J'Jి೾ڧ౓ΞΠίϯ
    ϞόΠϧΞΠίϯ

    View full-size slide

  15. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    android:theme="@style/DualToneLightTheme"
    android:id="@+id/mobile_signal"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    systemui:hasOverlappingRendering="false"
    />
    android:theme="@style/DualToneDarkTheme"
    android:id="@+id/mobile_signal_dark"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:alpha="0.0"
    systemui:hasOverlappingRendering="false"
    />
    android:id="@+id/mobile_type"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    />
    android:id="@+id/mobile_roaming"
    android:layout_width="wrap_content"
    android:layout_height="17dp"
    android:paddingStart="22dp"
    android:paddingTop="1.5dp"
    android:paddingBottom="3dp"
    android:scaleType="fitCenter"
    android:src="@drawable/stat_sys_roaming"
    android:contentDescription="@string/accessibility_data_connection_roaming"
    android:visibility="gone" />


    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:systemui="http://schemas.android.com/apk/res-auto"
    android:id="@+id/mobile_combo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    >
    android:layout_height="17dp"
    android:layout_width="wrap_content">
    android:id="@+id/mobile_in"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:src="@drawable/ic_activity_down"
    android:visibility="gone"
    android:paddingEnd="2dp"
    />
    android:id="@+id/mobile_out"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:src="@drawable/ic_activity_up"
    android:paddingEnd="2dp"
    android:visibility="gone"
    />

    NPCJMF@TJHOBM@HSPVQYNM


    ϞόΠϧ௨৴ঢ়گΞΠίϯ
    ௨৴छผ
    ΞΠίϯ
    ి೾ڧ౓ΞΠίϯ
    ϩʔϛϯάΞΠίϯ

    View full-size slide

  16. ΞϯςφϐΫτͷιʔεΛ௥ͬͯΈΑ͏
    ΞΠίϯͷදࣔઃఆ

    QBDLBHFT4ZTUFN6*SFTWBMVFTDPOpHYNM


    ˡ௨৴Πϯδέʔλදࣔઃఆ
    ˡ-5&઀ଓ࣌(ͱදࣔ͢Δ͔Ͳ͏͔
    ˢ-5&"઀ଓ࣌ɺ(-5&ͱදࣔ͢Δ͔Ͳ͏͔

    View full-size slide

  17. ΞϯςφϐΫτΛΧελϚΠζͯ͠Έͨ

    View full-size slide

  18. ΞϯςφϐΫτΛΧελϚΠζͯ͠Έͨ
    ͜Μͳײ͡ʹͯ͠Έ·ͨ͠


    ˞ιʔε͸HJUIVCͰެ։ͯ͠·͢ˣ
    ɹIUUQTHJUIVCDPN-JOFBHF:VJBOESPJE@GSBNFXPSLT@CBTF

    View full-size slide

  19. ΞϯςφϐΫτΛΧελϚΠζͯ͠Έͨ
    ΞΠίϯσαΠϯมߋ
    w ֤௨৴छผΞΠίϯͷมߋ
    w ௨৴ঢ়گΞΠίϯͷมߋ
    w 8J'Jి೾ڧ౓ΞΠίϯͷมߋ
    ΞΠίϯදࣔҐஔͷมߋ
    w ௨৴छผΞΠίϯΛి೾ڧ౓ΞΠίϯͱಠཱ
    w ௨৴ঢ়گΞΠίϯΛ௨৴छผΞΠίϯͷԼʹ
    -5&઀ଓ࣌͸-5&ɺ-5&"઀ଓ࣌͸(ͱදࣔ
    w .PCJMF4JHOBM$POUSPMMFSKBWBͷॲཧมߋ


    View full-size slide

  20. ࠓޙͷల๬

    View full-size slide

  21. ࠓޙͷల๬
    8J'J઀ଓ࣌ͷΞΠίϯόά
    w 8J'Jʹ઀ଓ͍ͯͯ͠΋ɺ

    ϞόΠϧ௨৴͕ߦΘΕͨͱ͖͸௨৴छผΞΠίϯΛද͍ࣔͨ͠


    ి೾ڧ౓ΞΠίϯͷมߋ
    w BSSPXTΈ͍ͨͳΞΠίϯʹ͍ͨ͠ʂ


    View full-size slide

  22. ·ͱΊ
    ΞϯςφϐΫτͷΧελϚΠζํ๏
    w 4ZTUFN6*BQLΛٯίϯύΠϧʢ/PVHBUҎલʣ
    w ιʔεΛվม͠Ϗϧυ

    ΞϯςφϐΫτͷॲཧ
    w BOESPJE@GSBNFXPSLT@CBTFQBDLBHFT4ZTUFN6*ҎԼ
    w ΞϯςφϐΫτͷΞΠίϯɿSFTESBXBCMF
    w ΞΠίϯͷ഑ஔɿSFTMBZPVU
    w ΞΠίϯͷදࣔॲཧ

    ɹTSDDPNBOESPJETZTUFNVJTUBUVTCBS4JHOBM$MVTUFS7JFXKBWB

    ɹTSDDPNBOESPJETZTUFNVJTUBUVTCBSQPMJDZ.PCJMF4JHOBM$POUSPMMFSKBWB


    View full-size slide

  23. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠

    View full-size slide