ฉันจะเริ่มเบราว์เซอร์ epiphany ในโหมดเต็มหน้าจอจากเทอร์มินัล (ไม่ใช่ F11) ได้อย่างไร เอกสารบอกว่าจะใช้อาร์กิวเมนต์-f
หรือ--fullscreen
แต่ไม่ทำงาน
ฉันจะเริ่มเบราว์เซอร์ epiphany ในโหมดเต็มหน้าจอจากเทอร์มินัล (ไม่ใช่ F11) ได้อย่างไร เอกสารบอกว่าจะใช้อาร์กิวเมนต์-f
หรือ--fullscreen
แต่ไม่ทำงาน
คำตอบ:
คุณสามารถเริ่มในโหมดคีออสก์โดยใช้-a
คุณอาจต้องสร้าง~/.config
โปรไฟล์ของคุณ
epiphany-browser -a --profile ~/.config http://localhost/index.html
~/.config
เป็น/home/pi/.config
เมื่อคุณใส่สิ่งนี้ลงไป/etc/rc.local
และมันก็ใช้งานได้อย่างมีเสน่ห์
นี่คือวิธีที่ฉันได้รับ ephiphany เบราว์เซอร์เริ่มต้นทำงานในโหมด Kiosk ก่อนอื่นฉันจะตั้งค่าsudo raspi-config
ตัวเลือกการบูตเป็น b2 "พร้อมรับคำสั่งด้วยการเข้าสู่ระบบอัตโนมัติ"
สร้างไฟล์ startB ในโฮมไดเร็กตอรี่ของคุณ/home/pi/
ด้วยเนื้อหาดังต่อไปนี้
sudo nano ./startB
#!/bin/sh
xset -dpms # disable DPMS (Energy Star) features.
xset s off # disable screen saver
xset s noblank # don't blank the video device
matchbox-window-manager -use_titlebar no &
WEBKIT_DISABLE_TBS=1 epiphany-browser -a --profile /home/pi/.config http://site
ตอนนี้ sudo nano /etc/rc.local
และใส่ในบรรทัดต่อไปนี้ก่อนที่จะออก 0
sudo xinit ./home/pi/startB &
และ Raspberry Pi จะบู๊ตในโหมดคีออสก์ด้วยเบราว์เซอร์
WEBKIT_DISABLE_TBS=1
มีการตั้งค่าและสิ่งที่ควรทำ ไม่เกี่ยวข้องกับkwebหรือไม่
ฉันได้มันมาพร้อมกับ xautomation ฉันไม่ประสบความสำเร็จกับ "-a"
สคริปต์ที่ฉันใช้คือ:
xte 'sleep 10' 'key F11'&
epiphany-browser test.html
รหัสนี้ส่งการกดแป้นพิมพ์ F11 10 วินาทีหลังจากเริ่มเบราว์เซอร์
นั่นคือหลังจากที่ฉันติดตั้ง xautomation ซึ่งให้คำสั่ง xte:
root@nexus:/home/pi/bin# aptitude install xautomation
ฉันประสบความสำเร็จหลังจากลองทำสิ่งนี้
บันทึกเชลล์สคริปต์นี้ไปที่: /home/pi/fullscreen.sh
sudo -u pi epiphany-browser -a --profile ~/.config http://127.0.0.1/index.html --display=:0 &
sleep 15s;
xte "key F11" -x:0
&
เป็นสิ่งสำคัญ เครื่องหมายนี้ไม่สนใจข้อผิดพลาดจาก epiphany-browser ฉันเพิ่ม&
เครื่องหมายเพราะฉันพบข้อผิดพลาดหลังจากฉันลองเชลล์สคริปต์นี้ในบรรทัดคำสั่ง
sudo apt-get install epiphany-browser
sudo apt-get install xautomation
sudo vi /etc/xdg/lxsession/LXDE/autostart
@/home/pi/fullscreen.sh
sudo chmod 755 /home/pi/fullscreen.sh
(ขออภัยภาษาอังกฤษของฉันไม่ดีเพราะฉันเป็นคนญี่ปุ่น)
การ-a
ตั้งค่าสถานะไม่ส่งผลให้เต็มหน้าจอสำหรับฉันและF11
สลับเป็นเต็มหน้าจอ (แทนที่จะตั้งค่าไว้) ฉันต้องการบางสิ่งที่เป็นรูปธรรมมากขึ้น
ฉันลงเอยด้วยการใช้wmctrl -r "<name of window>" -b add,fullscreen
ซึ่งตั้งค่าเต็มหน้าจอแทนการสลับและเรียกสิ่งนี้แบบวนซ้ำในขณะที่กระบวนการเบราว์เซอร์ยังคงทำงานอยู่ Epiphany ตอบกลับสิ่งนี้เหมือนกับว่าคุณเพิ่งกด F11 ซ่อนแถบ nav และลบการตกแต่งหน้าต่าง
# disable screensaver and screen blanking
xset -dpms s off
# create profile folder if it doesn't exist
mkdir -p /home/<user>/.config/epiphany-kiosk
# launch the browser as a background process
epiphany-browser -a --profile /home/<user>/.config/epiphany-kiosk http://localhost:8000/ &
# see /programming//a/20165094/66349
# get the browser PID
pid=$!
# If this script is killed, kill the main process.
trap "kill $pid 2> /dev/null" EXIT
# Loop while it's running...
while kill -0 $pid 2> /dev/null; do
wmctrl -r "<name of window>" -b add,fullscreen
sleep 2
done
# Disable the trap on a normal exit.
trap - EXIT
ฉันพบว่าการใช้ความล่าช้าระหว่างคำสั่ง epiphany launch และ xte sucks ฉันมองหาวิธีที่ดีกว่า (และเชื่อถือได้มากกว่า)
ความพยายามครั้งแรกของฉันคือการเปิด epiphany ในไฟล์ php ที่จะรันคำสั่ง xte: <?php $out = shell_exec("xte 'key F11'"); ?>
น่าเสียดายที่มันไม่ทำงาน ไม่สามารถบอกคุณได้ว่าทำไม (ถ้ามีคนรู้ฉันสนใจ) เมื่อฉันแสดงผลด้วยxte -h
ฉันจะได้รับความช่วยเหลือจากคำสั่ง xte บนหน้าเว็บของฉัน ... อย่างไรก็ตามฉันไม่มีเวลามากดังนั้นฉันจึงลองอีกวิธีหนึ่ง
แนวคิดยังคงเปิดใช้ epiphany เป็นไฟล์ php (fs.php) ที่มี:
$h = fopen("/var/www/fs/FS.chk", "w");
#fwrite($h, "browser opened"); # <- don't really need this
fclose($h);
สำหรับการเปิดเว็บเบราว์เซอร์ฉันจะใช้ bash script ที่สามารถเรียกใช้หลังจากการบู๊ตหรือทุกเวลาที่คุณต้องการ สคริปต์ประกอบด้วย:
if [ -e "var/www/fs/FS.chk" ]; then
rm -f /var/www/fs/FS.chk
fi
epiphany localhost/fs/fs.php &
until [ -e "/var/www/fs/FS.chk" ]
do
sleep 0.1
done
xte "key F11"
ดังที่คุณสังเกตเห็นไดเรกทอรีการทำงานของฉันคือ / var / www / fs / แต่คุณสามารถปรับให้เข้ากับความต้องการของคุณ นอกจากนี้มันค่อนข้างง่ายที่จะเพิ่มการเปลี่ยนเส้นทางในไฟล์ php เพื่อสลับไปยังเว็บเพจที่ต้องการเมื่อเว็บเบราว์เซอร์ทำงานในโหมดเต็มหน้าจอ
รหัส php สร้างไฟล์พยาน (FS.chk) ในขณะที่ทุบตีหลังจากเปิดตัว epiphany ไปยังไฟล์ php นี้กำลังมองหาไฟล์พยาน ไฟล์นี้จะถูกสร้างขึ้นก็ต่อเมื่อมีการเปิด epiphany (ซึ่งเป็นการปิดช่วงเวลา 15 วินาทีในการโพสต์ก่อนหน้านี้) เมื่อ bash เห็นไฟล์พยานมันจะดำเนินการคำสั่ง xte ...
แก้ไข: ฉันเพิ่งพบว่ามันเป็นสิ่งสำคัญที่จะไม่เพิ่ม "http: //" ก่อนที่ URL จะถูกส่งไปยัง epiphany หากคุณทำคำสั่ง xte จะออกให้เร็วเกินไป
ทำแบบนี้! GoTo: https://github.com/elalemanyo/raspberry-pi-kiosk-screen
สร้างไฟล์: nano /home/pi/fullscreen.sh
วางสิ่งนี้ลงใน fullscreen.sh:
#!/bin/bash
sleep 20
if [ -z "$(pgrep epiphany)" ];
then (sudo -u pi epiphany-browser -a -i --profile ~/.config http://www.na.se --display=:0) &
sleep 5s;
xte "key F11" -x:0;
fi
bash $0 &
และถ้าเบราว์เซอร์ของคุณขัดข้องมันจะกลับมามีชีวิตอีกครั้ง :)
xte มีตัวเลือกในการส่งคำสั่งไปยังรีโมท (หรือจอแสดงผลในเครื่อง)
มันง่ายกว่าที่จะใช้ตัวเลือก -x xte:
epiphany --display=:0 [http://YOURURL]
sleep 20 && xte -x :0 "key F11"
โชคดี!
ติดตาม @ Jacobm001 และ @Adeel โพสต์ แต่หลังจากทั้งหมดที่แก้ไข:
~/.config/states.xml
ปรับ#property id="3" value_type="gint">1920< #width
เปลี่ยนแก้ไข#property id="3" value_type="gint">1080< #height
จับคู่เหล่านี้กับความละเอียดของอุปกรณ์ของคุณ ส่วนความคิดเห็นของฉันไม่ได้อยู่ในไฟล์ states.xml
บันทึกและรีบูต
อย่าลืมทำให้สคริปต์ของคุณทำงานได้!
sudo chmod +x /home/pi/startB