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

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

13
คุณมักจะติดแท็กรายการบันทึกอย่างไร (Android)
ฉันถือว่าพวกคุณส่วนใหญ่รู้จัก android.util.Log วิธีการบันทึกทั้งหมดยอมรับ 'String tag' เป็นอาร์กิวเมนต์แรก และคำถามของฉันคือคุณมักจะแท็กบันทึกของคุณในแอปพลิเคชันของคุณอย่างไร ฉันเคยเห็นฮาร์ดโค้ดแบบนี้: public class MyActivity extends Activity { private static final String TAG = "MyActivity"; //... public void method () { //... Log.d(TAG, "Some logging"); } } สิ่งนี้ดูไม่ดีเนื่องจากสาเหตุหลายประการ: คุณสามารถบอกฉันได้ว่ารหัสนี้ไม่มีฮาร์ดโค้ด แต่มี แอปพลิเคชันของฉันสามารถมีคลาสกี่คลาสก็ได้ในแพ็กเกจต่างๆที่มีชื่อเดียวกัน ดังนั้นจึงเป็นการยากที่จะอ่านบันทึก มันไม่ยืดหยุ่น คุณใส่ TAG ฟิลด์ส่วนตัวไว้ในชั้นเรียนของคุณเสมอ มีวิธีใดในการรับ TAG สำหรับชั้นเรียนหรือไม่?
98 android  logging 

11
Recyclerview ภายในการเลื่อนแบบ Nested Scrollview แต่ไม่เลื่อนเร็วเหมือน Recyclerview ปกติหรือ Nested Scrollview
ฉันใช้RecyclerViewภายในNestedScrollViewและมันได้ผล แต่เมื่อฉันใช้RecyclerViewภายในLinearLayoutหรือบางสิ่งบางอย่างมันจะเลื่อนด้วยความเร็วต่างๆขึ้นอยู่กับท่าทาง การเลื่อนฟังท่าทางและถ้าฉันเลื่อนขึ้นเพียงเล็กน้อยมันก็จะเลื่อนขึ้นเล็กน้อยในขณะที่ถ้าฉันเลื่อนเร็วมากมันก็จะเลื่อนเร็วมาก ตอนนี้ปัญหาของฉันคือRecyclerViewข้างในNestedScrollViewเลื่อนอย่างแน่นอน แต่การเลื่อนอย่างรวดเร็วไม่ทำงาน อย่างไรก็ตามฉันเลื่อนขึ้นเร็วหรือช้าRecyclerViewหรือNestedScrollViewเลื่อนเพียงเล็กน้อย ฉันจะทำให้มุมมองการเลื่อนของฉันNestedScrollViewหรือRecyclerViewภายในนั้นเลื่อนด้วยความเร็วต่างๆได้อย่างไร

7
เลือกไฟล์ประเภทใดก็ได้ผ่าน Intent ใน Android
ฉันต้องการเริ่มตัวเลือกเจตนาสำหรับแอปที่สามารถส่งคืนไฟล์ประเภทใดก็ได้ ตอนนี้ฉันใช้ (ซึ่งฉันคัดลอกมาจากซอร์สโค้ดอีเมล Android สำหรับไฟล์แนบ) Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.addCategory(Intent.CATEGORY_OPENABLE); intent.setType("*/*"); Intent i = Intent.createChooser(intent, "File"); startActivityForResult(i, CHOOSE_FILE_REQUESTCODE); แต่จะแสดงเฉพาะ "แกลเลอรี" และ "เครื่องเล่นเพลง" ใน Galaxy S2 ของฉัน มี file explorer บนอุปกรณ์นี้และฉันต้องการให้มันปรากฏในรายการ ฉันต้องการให้แอพกล้องแสดงในรายการเพื่อให้ผู้ใช้สามารถถ่ายภาพและส่งผ่านแอพของฉันได้ หากฉันติดตั้งโปรแกรมจัดการไฟล์ Astro มันก็จะตอบสนองต่อเจตนานั้นเช่นกัน ลูกค้าของฉันเป็นเจ้าของ Galaxy SII เท่านั้นและฉันไม่ต้องการบังคับให้พวกเขาติดตั้งตัวจัดการไฟล์ Astro เนื่องจากพวกเขามีตัวจัดการไฟล์พื้นฐาน แต่เพียงพอแล้ว มีความคิดว่าฉันจะบรรลุเป้าหมายนี้ได้อย่างไร? ฉันค่อนข้างมั่นใจว่าฉันเห็นตัวจัดการไฟล์เริ่มต้นปรากฏในเมนูเพื่อเลือกไฟล์ แต่ฉันจำไม่ได้ว่าอยู่ในแอปใด


11
GUI สำหรับผู้จัดการ Android SDK หายไปหรือไม่
ฉันไม่ค่อยทำอะไรกับ Android เลยสับสนนิดหน่อย ในขณะที่กลับมีการติดตั้งสองประเภท ได้แก่ Android Studio และ Android SDK ฉันมีความคิดดังนั้นฉันไม่ต้องการ Studio โดยปกติฉันจะดาวน์โหลด SDK ที่มีเครื่องมือ UI เพื่อดาวน์โหลดส่วนประกอบ ฉันเพิ่งได้รับhttps://dl.google.com/android/repository/tools_r25.2.3-linux.zipและฉันไม่เห็น UI SDK Manager ในนั้น มีbin/sdkmanagerเชลล์สคริปต์ แต่มันไม่สะดวกสำหรับจุดประสงค์ของฉันเพราะการดำเนินการผ่านเอาต์พุตของ--listชื่อแพ็กเกจการคัดลอกและการเรียกใช้sdkmanagerจะใช้เวลามากเกินไป อะไรคือวิธีการติดตั้งอย่างรวดเร็วในตอนนี้? ปล. ฉันใช้ Ubuntu 16.10 ในกรณีที่มันสำคัญ ป.ล. 2. ฉันเพิ่งลองsdkmanager "platforms;android-25"ตามเอกสารแต่ไม่มีผลลัพธ์หลังจากที่ฉันยอมรับเงื่อนไข มันติดตั้งไฟล์ SDK ที่ไหน? มันยังติดตั้งหรือไม่? น่าอัศจรรย์.

8
อัปเดตวิดเจ็ตโดยใช้โปรแกรมจากกิจกรรม / บริการ / ผู้รับ
ฉันรู้ว่าเป็นไปได้ แต่ฉันไม่สามารถหาวิธีเรียกการอัปเดตวิดเจ็ตของฉันจากกิจกรรมหลักได้ ไม่มีเจตนาทั่วไปที่ฉันสามารถออกอากาศได้หรือไม่?

15
Android SDK บนเครื่อง linux 64 บิต
เป็นไปได้ไหมที่จะพัฒนาโดยใช้ Android SDK บนเครื่อง linux 64 บิต การดาวน์โหลด SDK ที่มีให้ดูเหมือนจะเป็นเพียงสำหรับ Linux เวอร์ชัน 32 บิต
97 linux  android  64-bit 

5
วิธีใช้ DrawerArrowToggle จากไลบรารี Android appcompat v7 21
ตอนนี้ Android 5.0 เปิดตัวแล้วฉันสงสัยว่าจะใช้ไอคอนแถบแอคชั่นแบบเคลื่อนไหวได้อย่างไร ห้องสมุดนี้ที่นี่ดำเนินการมันที่ดีสำหรับฉัน แต่เนื่องจากห้องสมุด v7 AppCompat มันมีวิธีการที่สามารถจะดำเนินการ? ไลบรารีอ้างอิงใน themes.xml <item name="drawerArrowStyle">@style/Widget.AppCompat.DrawerArrowToggle</item> ภายใต้รูปแบบนี้ <style name="Base.V7.Theme.AppCompat" parent="Platform.AppCompat"> อัปเดต ฉันได้รับสิ่งนี้โดยใช้ v7 DrawerToggle อย่างไรก็ตามฉันไม่สามารถจัดสไตล์ได้ กรุณาช่วย ฉันพบสไตล์ของมันใน v7 styles_base.xml <style name="Base.Widget.AppCompat.DrawerArrowToggle" parent=""> <item name="color">?android:attr/textColorSecondary</item> <item name="thickness">2dp</item> <item name="barSize">18dp</item> <item name="gapBetweenBars">3dp</item> <item name="topBottomBarArrowSize">11.31dp</item> <item name="middleBarArrowSize">16dp</item> <item name="drawableSize">24dp</item> <item name="spinBars">true</item> </style> ฉันเพิ่มสิ่งนี้ลงในสไตล์ของฉันแล้วและไม่ได้ผล เพิ่มไปยัง attr.xml ของฉันด้วย …

7
การทดสอบ Android AsyncTask กับ Android Test Framework
ฉันมีตัวอย่างการใช้งาน AsyncTask ที่ง่ายมากและมีปัญหาในการทดสอบโดยใช้ Android JUnit framework ใช้งานได้ดีเมื่อฉันสร้างอินสแตนซ์และเรียกใช้งานในแอปพลิเคชันปกติ อย่างไรก็ตามเมื่อดำเนินการจากคลาสเฟรมเวิร์กการทดสอบ Android ใด ๆ (เช่นAndroidTestCase , ActivityUnitTestCase , ActivityInstrumentationTestCase2เป็นต้น) มันจะทำงานแปลก ๆ : ดำเนินdoInBackground()การตามวิธีการอย่างถูกต้อง แต่มันไม่ได้เรียกใช้วิธีการใดวิธีการแจ้งเตือน ( onPostExecute(), onProgressUpdate()ฯลฯ ) - เพียงแค่เงียบไม่สนใจพวกเขาโดยไม่ต้องแสดงข้อผิดพลาดใด ๆ นี่เป็นตัวอย่าง AsyncTask ที่ง่ายมาก: package kroz.andcookbook.threads.asynctask; import android.os.AsyncTask; import android.util.Log; import android.widget.ProgressBar; import android.widget.Toast; public class AsyncTaskDemo extends AsyncTask<Integer, Integer, String> { AsyncTaskDemoActivity …
97 android  junit 

3
แถบสถานะโปร่งใสของ Android และแถบการดำเนินการ
ฉันได้ทำวิจัยไม่กี่ในหัวข้อนี้และฉันไม่สามารถหาโซลูชั่นที่สมบูรณ์เพื่อให้ขั้นตอนโดยขั้นตอนและมีการทดลองและข้อผิดพลาดในที่สุดผมก็หาวิธีที่เราสามารถบรรลุผลเหล่านี้: มีความโปร่งใสหรือสีและActionbar Statusbarดูคำตอบของฉันร้อง

14
ไม่สามารถนำเข้าโครงการ Gradle ใหม่: ไม่พบการแก้ไข Build Tools * .0.0
เมื่อฉันบูต Android Studio และเลือก "โครงการใหม่ ... " และดำเนินการสร้างโครงการใหม่ฉันได้รับข้อผิดพลาดป๊อปอัปนี้: ไม่สามารถนำเข้าโปรเจ็กต์ Gradle ใหม่: ไม่พบการแก้ไข Build Tools 17.0.0 ดูบันทึก IDE สำหรับรายละเอียดเพิ่มเติม (วิธีใช้ | แสดงบันทึก) ฉันชอบที่จะปรึกษาบันทึก IDE แต่ฉันไม่สามารถเข้าถึงแอปพลิเคชันเพื่อทำอะไรได้มากมาย ฉันได้ตรวจสอบการตั้งค่าหลายครั้งเพื่อดูว่าฉันสามารถกำหนดเส้นทางสำหรับ Build Tools ได้หรือไม่ แต่ฉันไม่พบอะไรมากนัก ฉันจะแก้ไขปัญหานี้ได้อย่างไรหรือฉันจะเข้าสู่แอปพลิเคชันโดยไม่ต้องเปิดโครงการได้อย่างไรอย่างน้อยฉันก็สามารถดูบันทึกได้

11
Eclipse / Android:“ ข้อผิดพลาดในการเรียกใช้ตัวสร้าง 'Android Pre Compiler' ในโครงการ ... ”
พยายามทำงานบางอย่างในโครงการ Android ฉันไม่ได้ทำงานมาสองสามเดือนแล้ว แต่ทุกครั้งที่พยายามสร้างโครงการ Eclipse จะมีกล่องโต้ตอบขึ้นมาว่า: 'Building workspace' has encountered a problem Errors occurred during the build. Errors running builder 'Android Pre Compiler' on project 'XXX' java.lang.NullPointerException ฉันใช้ Eclipse บน Mac พร้อมกับโครงการสร้าง Android เป้าหมาย 4.0.3 (API ระดับ 15) และฉันติดตั้งเวอร์ชันต่อไปนี้แล้ว คราส - 3.7.2 เครื่องมือพัฒนา Android - 21.0.1 Android SDK - สูงสุด …

11
ListView addHeaderView ทำให้ตำแหน่งเพิ่มขึ้นทีละตำแหน่ง?
ด้านล่างนี้คือข้อมูลโค้ดที่มี ListView ฉันเพิ่ม emptyView และ headerView การเพิ่ม headerView ทำให้ตำแหน่งใน onItemClick เพิ่มขึ้นทีละตำแหน่ง ดังนั้นหากไม่มี headerView องค์ประกอบรายการแรกจะมีตำแหน่ง 0 โดย headerView ตำแหน่งขององค์ประกอบรายการแรกจะเป็น 1! สิ่งนี้ทำให้เกิดข้อผิดพลาดในอะแดปเตอร์ของฉันเช่นเมื่อเรียกใช้ getItem () และใช้วิธีการอื่น ๆ ดูด้านล่าง สิ่งที่แปลก: ในเมธอด getView () ของอะแด็ปเตอร์องค์ประกอบรายการแรกจะถูกร้องขอด้วยตำแหน่ง 0 แม้ว่าจะเพิ่ม headerView ก็ตาม !! public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { ListView list = (ListView) viewSwitcher.findViewById(R.id.list); View …

13
RuntimeException: ไม่สามารถสร้างอินสแตนซ์แอปพลิเคชันได้
เมื่อฉันเรียกใช้แอปพลิเคชันของฉันทุกครั้งที่ฉันได้รับข้อยกเว้นด้านล่างใน logcat ของฉัน: 04-14 09:29:53.965: W/dalvikvm(1020): threadid=1: thread exiting with uncaught exception (group=0x409c01f8) 04-14 09:29:53.985: E/AndroidRuntime(1020): FATAL EXCEPTION: main 04-14 09:29:53.985: E/AndroidRuntime(1020): java.lang.RuntimeException: Unable to instantiate application android.app.Application: java.lang.NullPointerException 04-14 09:29:53.985: E/AndroidRuntime(1020): at android.app.LoadedApk.makeApplication(LoadedApk.java:482) 04-14 09:29:53.985: E/AndroidRuntime(1020): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3938) 04-14 09:29:53.985: E/AndroidRuntime(1020): at android.app.ActivityThread.access$1300(ActivityThread.java:123) 04-14 09:29:53.985: E/AndroidRuntime(1020): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1185) 04-14 …

7
ข้อผิดพลาด: ปัญหาการแสดงผลไม่พบคลาสต่อไปนี้ android.support.v7.internal.widget.ActionBarOverlayLayout
ฉันเพิ่งเริ่มต้นพัฒนาแอพ android เมื่อฉันสร้างโปรเจ็กต์ใหม่บน Android Studio 1.1.0 มันแสดงข้อผิดพลาดนี้ " ปัญหาในการแสดงผลไม่พบคลาสต่อไปนี้ android.support.v7.internal.widget.ActionBarOverlayLayout " ตอนนี้ฉันได้ค้นหาเกี่ยวกับสิ่งนี้ใน google แล้วและฉันพบว่าอาจมี 3 วิธีแก้ปัญหาที่คนส่วนใหญ่มอบให้ พวกเขากล่าวว่า: เปลี่ยน api (จากบานหน้าต่างแสดงตัวอย่าง) จาก 22 เป็น 21 หรือ เปลี่ยนธีมแอพจาก "ธีมโครงการ" เป็นธีมอื่น ๆ ตรวจสอบให้แน่ใจว่าได้นำเข้าไลบรารี appcompat-v7 ที่ถูกต้องในโครงสร้างโปรเจ็กต์ของคุณ -> การอ้างอิง อ้างอิงขั้นตอนเหล่านี้ : เพิ่มตัวระบุโปรเจ็กต์ฟีเจอร์ไลบรารีสนับสนุนในส่วนการอ้างอิง ตัวอย่างเช่นหากต้องการรวมโปรเจ็กต์ appcompat ให้เพิ่มคอมไพล์ "com.android.support:appcompat-v7:18.0.+" ลงในส่วนการอ้างอิงดังที่แสดงในตัวอย่างต่อไปนี้: dependencies { ... compile "com.android.support:appcompat-v7:18.0.+" } หมายเหตุ: lib …

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