แฮ่ม…… หลังจากที่ลองคุ้ยแคะแกะเกามาหลายวัน ในที่สุดผมก็หาฟังก์ชัน Font::selectionRectForComplexText() ของไฟล์ webkit/WebCore/platform/graphics/android/FontAndroid.cpp ที่จะต้องเข้าไปแก้ตาม patch
http://android.git.kernel.org/?p=platform/external/webkit.git;a=blobdiff;f=WebCore/platform/graphics/android/FontAndroid.cpp;h=e9cf4c8f81eea9c4d0c6a001a0e0dab3afbcacd8;hp=a430b072354d8c9f835246c833cf6ff1f927bddc;hb=733e4cfb8b3cae83daff5cc7a426ee901227dbc6;hpb=18342a41ab72e2c21931afaaab6f1b9bdbedb9fa
เจอแล้วครับ!!! สำหรับคนที่อยากไปคุ้ยดูบ้าง.. มันอยู่ที่ offset 0x104644 ในไฟล์ libwebcore.so ครับ
ผมก็เลยจัดการใช้ hex editor เข้าไปแก้เรียบร้อย.. 🙂
จากที่ลองใช้งานมายังไม่เจอว่ามีปัญหาใดๆนะครับ (แก้แค่ 4byte เอง ไม่น่ากระทบฟังก์ชันอื่น) สามารถกดลิ้งค์ภาษาไทยได้อย่างมีความสุขซะที ถ้าใครสนใจอยากเอาไปลองก็นี่เลยครับ
http://aet.ath.cx/~aet/libwebcore.so
วิธีลง.
1.ต้อง root เครื่องก่อนนะครับ
1.5 ก๊อปปี้ไฟล์ libwebcore.so ที่โหลดมาไปไว้ในโฟลเดอร์ tools ของ SDK
2.ต่อสาย usb กับเครื่องแล้วสั่งตามนี้เลย
adb push libwebcore.so /sdcard/libwebcore.so-mod
adb shell
su
cd /sdcard
cat /system/lib/libwebcore.so > libwebcore.so-orig
cat libwebcore.so-mod > /system/lib/libwebcore.so
reboot
ตอนสั่ง su ถ้าพึ่ง root ครั้งแรกที่หน้าจอมือถือจะมี popup ของ superuser permissions ขึ้นมาถามว่าจะอนุญาตให้เป็น root หรือเปล่าให้กด allow ครับ
ใช้แล้วได้ผลเป็นงัยบอกด้วยนะครับ ถ้ามีใครสนใจวิธีคุ้ยแคะ เดี๋ยวผมจะพยายาม post วิธีทำอย่างละเอียดให้ 🙂
รูปตัวอย่างหน้าจอครับ
ก่อนแก้
หลังแก้
ขอบคุณทุกท่านที่ติชมครับ
ทำแล้วไม่ได้คะ สงสัยว่าจำเป็นไหม ที่จะต้องมี sdcard คะ
เพราะไม่มีคะ ลองทำดูแล้วก็ทำไม่ได้ ตอน copy file มันแสดงแบบว่า
ขนาดไฟล์ copy file 0 bite ในเวลา……..
แบบนี้อะคะ แล้วพอทำขั้นต่อไป ก็ ขึ้นว่า not find คะ
ถ้าเรา copy ตัวนี้ไปวางที่ sys/lib/…. เลยได้ไหมคะ ง่ายกว่าด้วยคะ
รุ่นนี้ sd card มันอยู่ในเครื่องแล้วเขาเรียกว่า อินเตอร์นอลคาร์ด ไม่ต้องไปซื้อมาใหม่หรอก ตอนนี้ยังมีไฟล์ตัวนั้นอยู่เลย
(ซัมซุงเอส)
ก็อปไปวางเลยได้ไหมคะ
จริงๆก็ได้ครับ แต่ที่ต้อง backup เผื่อไว้ก่อน เพราะถ้าเกิดมีปัญหาขึ้นมาจะได้วางตัวเก่าทับได้
อยู่พอดีเลย ช่วยแก้ไขการเชื่อมต่อไวไฟทรูด้วยครับ ตั้งกระทู้ไว้อยู่
ขอบคุณมาก
ไ่ม่ทราบว่าทำได้หรือเปล่า
ลองใช้คำสั่งใหม่อีกรอบซิ ไปที่ละเสต็ป
เพราะผมเพราะผมเพิ่งทำเสร็จไม่กี่วันเอง
ทำไม่ได้อะ
มันขึ้นว่า cannot creste sys/………….. permission denied คะลองทำหลายรอบแล้วคะ
เสียบเครื่องกับ คอม ต้อง mount ด้วยไหมคะ
ทำได้และ ลองทำตาม คห 7 แล้วก็ไม่ได้เลยลองแบบ เปิด โปรแกรมก่อนแล้วมาพิมพ์ su กลับได้คะ งงไหมคะเนี้ย
แล้วทำถึงใหนแล้วครับ
ได้แล้วจ้า กว่าจะได้หน้ามันเลยเรา
Hero ผมเป็นงี้คับ เหอะๆ ไม่ขึ้น SU ให้ allow ด้วยน่ะ แปลก
cannot create /system/lib/libwebcore.so: read-only file system
พอจะมีวิธีแก้มั้ยคับ
ขอ permission r/w ที่ system ยังเนี่ย
mount -oremount,rw /dev/block/mtdblock3 /system
ผ่านแล้วน่ะคับ แต่ตอนนี้ หลัง reboot เครื่องมา นับเวลาได้ 5 นาที มันยังไม่เข้า Home Screen เลยคับ 5555 ค้างตรง logo hero
ไม่ตรงรุ่นครับ พึ่งเห็นว่าเป็น Hero เจ๊งกะบ้งไปแล้วแน่เลย ทำ nandroid restore ซะเถอะ >.< จริงๆถ้าอยากลองแนะนำไปลองของ HTC Desire น่าจะใกล้เคียงกว่า
ขอบคุณคับ กู้กลับเส็ดล่ะ เดี๋ยวจะลองใหม่ นู๋ม๊ายยย๊อม นู๋ม๊ายยอม ฮ่าๆๆ
ตอนนี้กำลัง nandroid กู้พระราชากลับเมืองล่ะคับ อาการสาหัสกว่าที่คิดไว้ เหอะๆ
ลองสั่ง adb remount ก่อนคำสั่ง adb shell ดูครับ
พอพิมพ์
adb push libwebcore.so /sdcard/libwebcore.so-mod
แล้วมันขึ้นมาว่า
failed to copy ‘libwebcore.so’ to ‘/sdcard/libwebcore.so-mod : Read-only file system
อ่ะครับ ต้องแก้ permission ให้มันเอาไฟล์ไปทับยังไงครับ ??
root ยังเอ่ย
Root แล้วครับ TT TT”
ได้สั่ง mount sdcard ไปเป็น usb storage บน pc ไว้หรือเปล่าครับ? ถ้าใช่ให้ safe remove drive จาก pc ก่อนแล้วไปกดลากเมนูจากด้านบนมือถือลงมา เลือก Turn off USB storage ก่อนครับเพื่อให้ ss มองเห็น sdcard
ทำแล้วครับ TT.TT
อืม….ไปต่อไม่ถูกและ… อาทิตย์นี้ไปงาน meeting ไหมครับ น่าจะเอาไปให้คนที่นั่นช่วยทำให้ได้นะ แต่ผมไม่ว่างไปอ่ะครับ ต้องส่งลูกไปเรียนพิเศษ 😛
ผมพิมพ์ adb push libwebcore.so /sdcard/libwebcore.so-mod ใน dos แล้วไม่ได้ มันขึ้นว่า ‘adb’ is not recognized as an internal or external command,operable program or batch file. ต้องทำอย่างไรครับ
ติดตั้ง adb (android-sdk) ก่อนครับ
ได้ทำการลง sdk แล้ว / สร้างไดร์ c:\android\tools โยนไฟล์ libwebcore.so ไว้ข้างในแล้ว
ผมได้ทำตามที่ท่านแนะนำต้านบนแล้วก้อไม่สามารถเข้าได้ ยังขึ้นข้อความเหมือนเดิม
ต้องไปไงต่อครับ
ค่อย ๆ ทำครับ
เจอปัญหาให้เหงื่อไหลทุกคน ให้กำลังใจอยู่นะ
ลองแล้ว ผ่านหมดครับ แต่พอสั่ง reboot display ค้างอยู่ที่ samaung ครับ แต่เหมือนos มันจะทำงานต่อไปคือ สั่งงานผ่าน SDK ได้ครับ ตอนนี้ up rom ใหม่แล้ว แต่ยังไม่กล้าทำอันนี้อีกครับ
ใครเคยเจอบ้างครับ ขอบคุณครับ
ผมลองแล้วครับ กับเครื่อง Motorola XT701 ปรากฏว่า พอรีบูตเครื่องมันค้างอยู่ที่โลโก้โมโตโรล่า ไม่ว่าจะรีบูตกี่ครั้งก็จะค้างอยู่ที่เดิมนี้กดปิดไม่ได้ ก็เลยอยากจะบอกกับคนที่มีเครื่องรุ่นนี้ว่า อาจจะทำให้ระบบมันบูตไม่ได้แบบผม ควร nand backup ไว้นะครับ (ผมไม่ได้ nand backup ไว้ครับ ซวยเลย)
ถ้ายังใช้ adb shell เข้าไปที่เครื่องได้และได้มีการ backup ไฟล์ไว้ก่อน (ถ้าทำตามข้างบนจะเป็นไฟล์ชื่อ libwebcore.so-orig) ก็สามารถ restore โดยสั่งตามนี้ครับ
adb remount
adb shell
su
cat /sdcard/libwebcore.so-orig > /system/lib/libwebcore.so
reboot
ขอบคุณครับ
พอถึงตรงนั้นแล้ว ได้ลอง adb shell เข้าไปอีกทีแล้วแต่ไม่สามารถทำได้ครับ
หาไปหามา ไปเจอวิธีลง OpenRecovery มาแก้ไขครับ ซึ่งตอนนี้ก็ใช้ได้ปกติแล้วครับ โล่งอกโล่งใจไปที : )
อาจจะต้องรบกวนพี่ๆ น้องๆ ในเว็บนี้ให้ช่วนแกะไฟล์ libwebcore.so ให้ครับ
คือไฟล์ libwebcore.so มันเป็น library ของการจัดการหน้าเว็บอ่ะครับ (webkit) ต่างรุ่นต่างยี่ห้อกันมันไม่ควรจะเอามาใช้ด้วยกันครับ
ถ้าดึงไฟล์ libwebcore.so ของเครื่องคุณออกมาได้ (adb pull /system/lib/libwebcore.so) ลอง post มาให้ผมดูได้ครับ จะดูให้ว่าจะแก้ให้ได้หรือเปล่าครับ
ขอบคุณนะครับ ผมหลงห้องตั้งแต่ต้นแล้วครับ ขอโต๊ดนะก๊าบบ T__T
ผมมีไฟล์ libwebcore.so มาให้ครับ รบกวนด้วยนะครับ
โหลดได้ที่นี่ครับ http://bit.ly/bL37St
ลืม md5sum ครับ
7976e9a7550cc883e354a8995644029d libwebcore.so-orig
เอามาจากไหนอ่า XT701 อยากจับ
จาก Ebay ครับ ถ้ามีโอกาส จะพาน้องไปให้ลวนลามครับ : )
ลองแก้ให้แล้วครับ
http://aet.ath.cx/~aet/moto_xt701_ringfix.zip
ใช้ได้ไม่ได้บอกด้วยนะครับ 🙂
ใช้ได้แล้วครับ ขอบคุณ คุณ aet มากๆ ครับ ซาบซึ้งงงง T________T
” ถ้ายังใช้ adb shell เข้าไปที่เครื่องได้และได้มีการ backup ไฟล์ไว้ก่อน (ถ้าทำตามข้างบนจะเป็นไฟล์ชื่อ libwebcore.so-orig) ก็สามารถ restore โดยสั่งตามนี้ครับ
adb remount
adb shell
su
cat /sdcard/libwebcore.so-orig > /system/lib/libwebcore.so
reboot ”
ลองแล้วครับ ติดตรง su มันฟ้อง เกี่ยวกับสิทธไม่ถึงน่ะครับ เลยลง rom ใหม่เลยครับ
เครื่องยังไม่ได้ root หรือเปล่าครับ? ถ้า root ตอนเรียก su ครั้งแรกโปรแกรม superuser permissions ในมือถือจะ popup ขึ้นมาถามว่าจะ allow หรือเปล่า ต้องคลิก allow ด้วยครับ
” เครื่องยังไม่ได้ root หรือเปล่าครับ? ถ้า root ตอนเรียก su ครั้งแรกโปรแกรม superuser permissions ในมือถือจะ popup ขึ้นมาถามว่าจะ allow หรือเปล่า ต้องคลิก allow ด้วยครับ ”
root แล้วครับ su ครั้งแรกก็ allow แล้วครับ แต่พอ reboot ก็ค้างตามที่บอกด้านบนครับ ตอนนี้เลยไม่กล้าทำเลยครับ ขี้เกียจลง rom ใหม่ครับ (เผื่อค้างอีก)
ขอบคุณครับ
คุณ prapatsuhot ครับ
มีเครื่องที่ติดปัญหาเดียวกัน http://www.droidsans.com/node/3389
ช่วยแนะนำวิธีลง rom กลับเป็นของเดิมทีครับ ไปไม่ถูกเหมือนกัน
รบกวนเวลา share ไฟล์นะครับ ช่วยตั้งชื่อให้รู้ไปเลยนะครับว่ารุ่นไหน original หรือ fix จะได้สะดวกต่อเพื่อนๆนะครับ
เช่น
libwebcore-n1-frf91-org.so
libwebcore-n1-frf91-fixed.so
libwebcore-moto-XT701-org.so.zip
ผมติดตรงนี้อ่ะครับ
พอพิมพ์
cat /system/lib/libwebcore.so > libwebcore.so-orig แล้ว มันฟ้องว่า
cannot create libwebcore.so-orig : Read-only file system อ่ะครับ
ไม่ทราบว่าต้องแก้ยังไงต่อครับ
ขอบคุณครับ
ปล.รูทเครื่องแล้วครับ – สั่งเลือก Turn off USB storage แล้วครับ
ต้องมาเปิดโปรแกร su ในเครื่องเราก่อนนะ แล้วพิมพ์ su มันจะมีอะไร เด้งๆๆ ให้กด allow จ้า
เราติดตรงนี้เหมือนกัน
เปิดแล้วครับ มันก็ยังมีปัญหาที่ตำแหน่งเดิมอ่ะครับ
เหนื่อยจัง
คุณ ple98 ได้ทำการ root เครื่องแล้วหรือยังครับ
เพื่อความสะดวกและปลอดภัย แนะนำวิธีของคุณ dahoba ที่นี่ http://www.droidsans.com/node/3463 ดีกว่านะครับ
เครื่องของคุณ iamsirid ที่ทำพลาดแล้วบูทไม่ได้ ก็ได้ไฟล์ update.zip ของคุณ dahoba นี่แหละ เอาไปเปลี่ยนไฟล์ libwebcore.so ที่เสีย โดยวิธี update ก็เลยไม่ถึงขั้นต้องอัพ rom ใหม่ ถือว่าโชคดีไป
ช่วยแก้ file libwebcore ของ froyo galaxy s ได้ไหมครับ เป็นของตัว fw XXJP3 ครับ
http://www.mediafire.com/?pczdml6icvt7y4a
เห็นต่างประเทศเขาว่าติดตั้งแฟลชได้แล้วที่ XXJP3
ไม่ทราบว่าคุณลองดูหรือยัง ฝากลองด้วยนะครับ
ลองแล้วครับใช้ได้ครับ
ใน XXJP3 มันลิ้งค์ไม่ตรงด้วยเหรอครับ? เท่าที่ผมดูที่ git repository ของ android ตัว froyo มันน่าจะมีแก้เรื่องนี้ไปแล้วนะครับ
ถ้างัยเดี๋ยวผมลองหาดูแต่ไม่แน่ใจว่าจะแก้ได้หรือเปล่านะครับ…
เห็นแก้ใน GIT มานานแล้วเหมือนกันครับ แต่จนล่าสุด NexusOne ก็ยังไม่ตรงอยู่ดี
อืม…ขอโทษด้วยครับ พอดีผมดูผิดไป froyo-release (2.2_r1 และ 2.2_r1.1) มันยังไม่มีแก้เรื่องนี้ครับ เพราะ froyo-release โดน tag ไว้เมื่อวันที่ 2010-05-11 แต่ fix เรื่องนี้ถูก checkin เมื่อวันที่ 2010-05-17
ลองอันนี้ดูครับ
http://aet.ath.cx/~aet/libwebcore-fix-xxjp3.zip
ไหนๆก็ใช้ froyo แล้ว รบกวนขอ output ของคำสั่ง bbconfig หน่อยสิครับ
adb shell busybox bbconfig > bbconfig.txt
ขอไฟล์ bbconfig.txt อ่ะครับ อยากรู้ว่า samsung เค้า compile kernel ด้วย option อะไรบ้าง