คำถามติดแท็ก android

Android เป็นระบบปฏิบัติการมือถือของ Google ใช้สำหรับการเขียนโปรแกรมหรือพัฒนาอุปกรณ์ดิจิตอล (สมาร์ทโฟน, แท็บเล็ต, รถยนต์, ทีวี, เครื่องแต่งกาย, แก้ว, IoT) สำหรับหัวข้อที่เกี่ยวข้องกับ Android ให้ใช้แท็กเฉพาะสำหรับ Android เช่น android-intent, android-activity, android-adapter, ฯลฯ สำหรับคำถามนอกเหนือจากการพัฒนาหรือการเขียนโปรแกรม แต่เกี่ยวข้องกับกรอบของ Android ให้ใช้ลิงค์นี้: https: // android.stackexchange.com

2
บริการเบื้องหน้าถูกฆ่าโดย Android
อัปเดต :ฉันไม่พบวิธีแก้ปัญหาที่แท้จริง สิ่งที่ฉันได้เกิดขึ้นคือวิธีการเชื่อมต่อกับอุปกรณ์บลูทู ธ ก่อนหน้าโดยอัตโนมัติทุกครั้งที่การเชื่อมต่อขาดหายไป มันไม่เหมาะ แต่ดูเหมือนว่าจะทำงานได้ดีพอสมควร ฉันชอบที่จะได้ยินคำแนะนำเพิ่มเติมเกี่ยวกับเรื่องนี้ ฉันมีปัญหาเดียวกันกับในคำถามนี้: บริการถูกฆ่าในขณะที่กด Wake Lock และหลังจากเรียก startForegroundรวมถึงอุปกรณ์ (Asus Transformer) ระยะเวลาก่อนหยุดให้บริการ (30-45 นาที) การใช้งาน ล็อคการปลุกการใช้ startForeground () และความจริงที่ว่าปัญหาจะไม่เกิดขึ้นหากแอปเปิดอยู่เมื่อหน้าจอดับลง แอปของฉันรักษาการเชื่อมต่อบลูทู ธ กับอุปกรณ์อื่นและส่งข้อมูลระหว่างทั้งสองดังนั้นจึงต้องเปิดใช้งานตลอดเวลาเพื่อฟังข้อมูล ผู้ใช้สามารถเริ่มและหยุดบริการได้ตามต้องการและในความเป็นจริงนี่เป็นวิธีเดียวที่ฉันได้ดำเนินการเพื่อเริ่มหรือหยุดบริการ เมื่อบริการรีสตาร์ทการเชื่อมต่อบลูทู ธ กับอุปกรณ์อื่นจะขาดหายไป ตามคำตอบในคำถามที่เชื่อมโยง startForeground () "ลดโอกาสที่บริการจะถูกฆ่า แต่ไม่ได้ป้องกัน" ฉันเข้าใจว่าเป็นเช่นนั้นอย่างไรก็ตามฉันได้เห็นตัวอย่างของแอพอื่น ๆ ที่ไม่มีปัญหานี้ (เช่นทาซเคอร์) ประโยชน์ของแอปของฉันจะลดลงอย่างมากหากไม่มีความสามารถในการให้บริการจนกว่าผู้ใช้จะหยุดทำงาน มีวิธีใดบ้างที่จะหลีกเลี่ยงสิ่งนี้ ??? ฉันเห็นสิ่งนี้ในบันทึกของฉันเมื่อใดก็ตามที่บริการหยุด: ActivityManager: No longer want com.howettl.textab (pid …

9
FloatingActionButton พร้อมข้อความแทนรูปภาพ
ฉันกำลังพยายามหาวิธีแก้ไข FloatingActionButton จากไลบรารีสนับสนุนของ Android ใช้กับข้อความแทนรูปภาพได้หรือไม่? บางอย่างเช่นนี้: ฉันเห็นว่ามันขยาย ImageButton ดังนั้นฉันคิดว่าไม่ใช่ ฉันถูกไหม? สิ่งนี้ถูกต้องในแง่ของการออกแบบวัสดุโดยทั่วไปหรือไม่

6
วิธีตรวจสอบ URL / ชื่อเว็บไซต์ใน EditText ใน Android
ฉันต้องการป้อนข้อมูล URL หรือเพียงชื่อเว็บไซต์เช่นwww.google.comจากEditTextใน Android และเมื่อผู้ใช้คลิกที่Buttonเพื่อส่งหรือเมื่อEditTextจุดโฟกัสสูญเสีย URL ควรได้รับการตรวจสอบเช่นเดียวกับในรูปแบบ " www.anyURL.com "... ฉันจะทำเช่นนี้ได้อย่างไร? มีฟังก์ชัน inbuilt ใน Android หรือไม่?

5
รอจนกว่างาน async จะเสร็จสิ้น
ฉันยังใหม่กับการเขียนโปรแกรมมากและฉันมีข้อสงสัย ฉันมีAsyncTaskที่ฉันเรียกว่าRunInBackGround. และฉันเริ่มกระบวนการนี้เช่น: new RunInBackGround().execute(); แต่ฉันต้องการรอจนกว่าการเรียกนี้จะเสร็จสิ้นก่อนที่จะดำเนินการตามคำสั่งอื่น ๆ ของรหัส ฉันจะทำเช่นนั้นได้อย่างไร? มีวิธีใดบ้าง?
86 android 


16
Android: ไม่สามารถเพิ่มหน้าต่างได้ ปฏิเสธการอนุญาตสำหรับประเภทหน้าต่างนี้
ฉันกำลังทำงานกับแอพที่ฉันต้องแสดงหน้าต่างพร้อมข้อมูลบางอย่างบนหน้าจอล็อก (KeyGuard) โดยไม่ต้องปลดล็อกโทรศัพท์ ฉันคิดว่าฉันสามารถทำได้ด้วยWindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG แต่ทุกครั้งที่แอปของฉันขัดข้องโดยมีข้อผิดพลาดต่อไปนี้: android.view.WindowManager $ BadTokenException: ไม่สามารถเพิ่มหน้าต่าง android.view.ViewRootImpl$W@40ec8528 - การอนุญาตถูกปฏิเสธสำหรับประเภทหน้าต่างนี้ โพสต์เหล่านี้ ( ที่นี่ , ที่นี่และที่นี่ ) ทั้งหมดให้คำตอบเดียวกัน ในการเพิ่มสิทธิ์ต่อไปนี้ในไฟล์ Manifest android.permission.SYSTEM_ALERT_WINDOW วิธีแก้ไขที่ฉันได้ติดตั้ง แต่ฉันยังคงได้รับข้อผิดพลาดเดิม มีความคิดว่าฉันทำอะไรผิดหรือเปล่า? นี่คือสิทธิ์ในไฟล์รายการของฉัน: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.droidpilot.keyguardwindow" > <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="21" /> <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission …


3
ความหมายของ android.intent.action.MAIN คืออะไร?
ฉันได้เห็นคำอธิบายที่สับสนต่างๆมากมาย .. <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> ความหมายของ <action android:name="android.intent.action.MAIN" /> และ <category android:name="android.intent.category.LAUNCHER" /> และ <category android:name="android.intent.category.DEFAULT" />

30
ความล้มเหลว [INSTALL_FAILED_INVALID_APK]
เมื่อฉันคลิกเพื่อเรียกใช้โปรเจ็กต์ที่ฉันเพิ่งสร้างใน Android Studio 0.2.10 และเลือก Android ของฉัน (เชื่อมต่อด้วย USB พร้อมกับดีบักโดย USB บน) ฉันได้รับข้อผิดพลาดนี้: Waiting for device. Target device: 0123456789ABCDEF Uploading file local path: /Users/Rui/AndroidStudioProjects/FirstAppProject/FirstApp/build/apk/FirstApp-debug-unaligned.apk remote path: /data/local/tmp/rui.firstapp Installing rui.firstapp DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/rui.firstapp" pkg: /data/local/tmp/rui.firstapp Failure [INSTALL_FAILED_INVALID_APK] ความคิดของสิ่งที่อาจเป็น?

6
เทียบเท่ากับ Clean & build ใน Android Studio หรือไม่
วันนี้ในขณะที่ใช้งานแอปจาก Android Studio มันไม่ได้สร้างจากโค้ดล่าสุดของฉัน ฉันมองหาตัวเลือกClean & buildแต่ไม่พบ คำถามของฉันคือClean & buildของ Android Studio เทียบเท่ากับอะไร

3
จับรูดเพื่อปิดกิจกรรม
ฉันใช้การแจ้งเตือนของ Android เพื่อแจ้งเตือนผู้ใช้เมื่อบริการเสร็จสิ้น (สำเร็จหรือล้มเหลว) และฉันต้องการลบไฟล์ในเครื่องเมื่อกระบวนการเสร็จสิ้น ปัญหาของฉันคือในกรณีที่ล้มเหลว - ฉันต้องการให้ผู้ใช้มีตัวเลือก "ลองใหม่" และถ้าเขาเลือกที่จะไม่ลองอีกครั้งและปิดการแจ้งเตือนฉันต้องการลบไฟล์ในเครื่องที่บันทึกไว้เพื่อวัตถุประสงค์ของกระบวนการ (ภาพ ... ) มีวิธีจับเหตุการณ์ปัดเพื่อปิดการแจ้งเตือนหรือไม่

17
วิธีย้ายเค้าโครงขึ้นเมื่อซอฟต์คีย์บอร์ดแสดง Android
ฉันมีหน้าจอเข้าสู่ระบบที่มีสองEditTextsปุ่มและปุ่มเข้าสู่ระบบในเค้าโครงของฉัน ปัญหาคือเมื่อฉันเริ่มพิมพ์แป้นพิมพ์แบบนิ่มจะปรากฏขึ้นและครอบคลุมปุ่มเข้าสู่ระบบ ฉันจะดันเค้าโครงขึ้นหรือเหนือแป้นพิมพ์เมื่อปรากฏขึ้นได้อย่างไร ฉันไม่ต้องการใช้ a ScrollViewเพียงแค่ต้องการใช้งานโดยไม่ต้องเลื่อนลง กรุณาแนะนำวิธีการทำบางอย่างให้ฉัน ขอบคุณล่วงหน้า.

8
ทรัพยากร Android XXHDPI
ของ Google Nexus 10 ออกมาไม่นานและเป็นอุปกรณ์ตัวแรกที่จะใช้xxhdpiทรัพยากร มีความหนาแน่นของการแสดงผลประมาณ 300 DPI (อ้างอิงจากเว็บไซต์ Nexus 10และเครื่องคิดเลขนี้ ) อย่างไรก็ตามเมื่อฉันไปที่เอกสารของ Android จะระบุว่า: ldpi : ~ 120dpi mdpi : ~ 160dpi hdpi : ~ 240dpi xhdpi : ~ 320dpi xxhdpi ไม่ได้ระบุ ทำไมหน้าจอ 300 DPI ของ Nexus 10 จึงเป็นxxhdpiเช่นxhdpiนั้นและDPI โดยประมาณควรเป็นxxhdpiเท่าใด ในตอนนี้เราควรกังวลเกี่ยวกับการมีทรัพยากรใหม่ (นอกเหนือจากไอคอน) xxhdpiหรือไม่หรือเราควรปล่อยให้ระบบปฏิบัติการขยายขนาดxhdpiทรัพยากร?

2
จะย้ายจาก Google-Analytics ไปยัง Firebase-Analytics ได้อย่างไร
พื้นหลัง ในช่วงไม่กี่เดือนที่ผ่านมา Google ได้เผยแพร่ทางเลือกใหม่ของ Analytics ที่เรียกว่า " Firebase Analytics " ปัญหา เนื่องจากแอปมี Google-Analytics อยู่แล้วฉันจึงพบอุปสรรคบางอย่างที่ไม่เห็นวิธีจัดการที่ดีที่สุด คำถาม ก่อนหน้านี้ฟังก์ชัน "newTracker" จำเป็นต้องมีรหัสคุณสมบัติ ตอนนี้ไม่เห็นแล้ว หมายความว่าไม่จำเป็นต้องใช้หรือไม่? ก่อนหน้านี้มี "enableAdvertisingIdCollection" เพื่อรวบรวมข้อมูลโฆษณาด้วย ไม่พบใน API ใหม่ มีการรวบรวมโดยอัตโนมัติหรือไม่? "setDryRun" สามารถปิดการส่งข้อมูลไปยังเซิร์ฟเวอร์ได้ แต่ตอนนี้ฉันไม่เห็น หมายความว่าเป็นวิธีนี้โดยอัตโนมัติสำหรับเวอร์ชันดีบักของแอปใช่หรือไม่ ฟังก์ชันทั้งหมดเขียนลงในบันทึกหรือไม่ ก่อนหน้านี้ฉันติดตาม "หน้าจอ" ได้: public void setScreenName(String name) { mGoogleAnalyticsTracker.setScreenName(name); mGoogleAnalyticsTracker.send(new HitBuilders.ScreenViewBuilder().build()); } ตอนนี้ฉันไม่เห็นมัน แต่อย่างที่ฉันอ่านฉันคิดว่ามันเป็นไปโดยอัตโนมัติดังนั้นมันจึงส่งข้อมูลของวงจรชีวิตของกิจกรรมอยู่ดี มันจริงหรอ? อาจเป็นสิ่งที่สำคัญที่สุดก่อนหน้านี้ฉันสามารถติดตามโดยใช้หมวดหมู่การกระทำป้ายกำกับและค่า: public void …

2
กระบวนการขัดข้องระหว่างการสร้างหัวฉีด RoboGuice หากมีอินสแตนซ์จำลองในโมดูลใด ๆ
ฉันมีปัญหากับการใช้เฟรมเวิร์ก RoboGuice และ AndroidMock ในการทดสอบหน่วย ฉันได้สร้างโครงการง่ายๆเพื่อแสดงปัญหาของฉัน ที่นี่ฉันสร้างอินสแตนซ์จำลองและลงทะเบียนใน RoboGuice แต่กระบวนการขัดข้องระหว่างเมธอด "setUp ()" และ "test01 ()" ตามที่ฉันเดาจริงๆแล้วกระบวนการหยุดทำงานเมื่อสร้าง Injector หากโมดูลใดมีอินสแตนซ์จำลองอยู่ภายใน ถ้าฉันแทนที่อินสแตนซ์ที่ถูกเยาะเย้ยด้วยอินสแตนซ์ของคลาสที่ใช้อินเทอร์เฟซทุกอย่างก็จะทำงานได้ดี มีใครรู้วิธีแก้ไขปัญหานี้หรือไม่? นี่คือรหัสทดสอบของฉัน: public class testInjectMock extends RoboUnitTestCase<MyApplication> { protected void setUp() throws Exception { InterfaceToMock instance = AndroidMock.createNiceMock(InterfaceToMock.class); AndroidMock.expect(instance.SimpleMethod()).andStubReturn("Hello!"); MyModule myMockModule = new MyModule(); myMockModule.setMockedInstance(instance);//Comment this string to get into the test01() …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.