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

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

2
ความแตกต่างระหว่าง app-debug.apk และ app-debug-unaligned.apk
ในสตูดิโอ Android ที่ตั้งค่าตัวแปรบิวด์เป็นโหมด "ดีบัก" ฉันพบเอาท์พุต apk สองรายการ แอปพลิเค debug.apk แอปพลิเคแก้ปัญหา-unaligned.apk อะไรคือความแตกต่างระหว่างไฟล์เหล่านั้น?

9
การพัฒนาข้ามแพลตฟอร์ม iOS / Android [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันเล่นกับการพัฒนาแอพ Android ใน Java มาระยะหนึ่งแล้วและฉันก็เริ่มรับมือกับมันได้ อย่างไรก็ตามหากฉันต้องการเริ่มต้นในเวอร์ชัน iOS ฉันจำเป็นต้องเขียนโค้ดทุกอย่างตั้งแต่เริ่มต้นซึ่งเป็นสิ่งที่ไม่พึงปรารถนา ฉันสงสัยว่ามีโซลูชันข้ามแพลตฟอร์มใดบ้างและทำงานได้ดีเพียงใดในทางปฏิบัติ ฉันคิดเกี่ยวกับเว็บแอปพลิเคชัน - อาจใช้jQuery MobileหรือTitaniumหรือ Adobe Flash / Flex / Air ฉันยังไม่มี Mac ซึ่งฉันอาจจะต้องลงทุน ดังนั้นคำถามของฉัน: มีสภาพแวดล้อมการพัฒนาข้ามแพลตฟอร์มใดบ้างสำหรับ iOS / Android (และ / หรืออุปกรณ์อื่น ๆ ) คุณมีประสบการณ์อะไรกับเครื่องมือเหล่านี้บ้าง? (นี่คือสิ่งที่ฉันอยากรู้จริงๆ)

18
Android: บรรทัดสุดท้ายของ textview ถูกตัดออก
ฉันมีแนวนอนLinearLayoutที่มีTextViewตามมาด้วยSpinnerถัดไป ซึ่งLinearLayoutจะเพิ่มขึ้นแบบไดนามิกหลายครั้งในแนวตั้งคงที่ที่LinearLayoutมีอยู่ภายในไฟล์RelativeLayout. ปัญหาคือว่าตั้งแต่ผมเปลี่ยนจากTheme.lightการTheme.holo.lightบรรทัดสุดท้ายของการTextViewได้รับการตัดในช่วงครึ่งปี สิ่งนี้เกิดขึ้นเมื่อข้อความไดนามิกมีความยาวและครอบคลุมมากกว่าหนึ่งแถว ฉันสามารถแก้ไขได้โดยการเพิ่มช่องว่างด้านล่างในแนวนอนLinearLayoutที่มีเครื่องหมายTextViewและSpinner. สิ่งนี้ไม่ได้เป็นการแก้ไข แต่เป็นการแฮ็กมากกว่า ใครช่วยให้คำแนะนำเกี่ยวกับวิธีแก้ไขปัญหานี้อย่างถูกต้องได้ไหม ฉันได้อ่านคำถามอื่น ๆ ด้วย แต่ดูเหมือนจะไม่มีใครช่วยได้ เค้าโครงเชิงเส้นแนวนอน: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/textView1" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_marginRight="20dp" android:text="TextView"/> <Spinner android:id="@+id/spinner1" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> เลย์เอาต์สัมพัทธ์ที่เลย์เอาต์ด้านบนพองแบบไดนามิกที่ Linear Layout ด้วย id ll2_7: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <ScrollView android:id="@+id/scrollView" android:layout_width="fill_parent" android:layout_height="wrap_content" …


11
ดึงฐานข้อมูลหรือไฟล์อื่น ๆ จาก Internal Storage โดยใช้ run-as
บนอุปกรณ์ Android ที่ไม่ได้รูทฉันสามารถไปที่โฟลเดอร์ข้อมูลที่มีฐานข้อมูลโดยใช้run-asคำสั่งกับชื่อแพ็กเกจของฉัน ประเภทไฟล์ส่วนใหญ่ฉันแค่ดูเนื้อหา แต่ด้วยฐานข้อมูลฉันต้องการดึงออกจากอุปกรณ์ Android มีคำสั่งdownload copyหรือmoveคำสั่งจากส่วนนี้ของ adb shell หรือไม่? ฉันต้องการดาวน์โหลดไฟล์ฐานข้อมูลและดูเนื้อหาโดยใช้เบราว์เซอร์ฐานข้อมูล คำตอบหนึ่งที่นี่เกี่ยวข้องกับการเปลี่ยนแพ็คเกจแอปพลิเคชันทั้งหมดให้เป็นไฟล์เก็บถาวรที่บีบอัด แต่ไม่มีคำตอบเพิ่มเติมเกี่ยวกับวิธีการแยกไฟล์เก็บถาวรนั้นเมื่อเสร็จสิ้นและย้ายไปที่เครื่องทำให้ฉันต้องหลบเลี่ยงเมื่ออาจมีวิธีแก้ปัญหาที่ตรงกว่าให้เริ่มต้นด้วย

11
เริ่มต้น GoogleService ไม่สำเร็จ
ฉันใช้ Google Maps ในแอปพลิเคชัน Android ของฉัน ฉันได้สร้างคีย์และเพิ่มสิทธิ์ที่จำเป็นในไฟล์รายการแล้ว แต่ในไม่ช้าฉันก็เริ่มแอปพลิเคชันฉันได้รับข้อความนี้ในดีบักเกอร์: GoogleService ไม่สามารถเริ่มต้นได้สถานะ: 10 ขาดทรัพยากรที่คาดไว้: 'R.string.google_app_id' สำหรับการเริ่มต้นบริการของ Google สาเหตุที่เป็นไปได้คือไม่มีปลั๊กอิน google-services.json หรือ com.google.gms.google-services gradle ฉันไม่แน่ใจว่าเกิดอะไรขึ้น แผนที่ใช้งานได้ดีและฉันสามารถใช้งานได้โดยไม่มีปัญหาใด ๆ ไฟล์ gradle ของฉันมีรายการนี้: คอมไพล์ 'com.google.android.gms: play-services: 8.4.0' บ่นเรื่องอะไรและฉันจะบรรเทาได้อย่างไร?


6
Facebook SDK 4 สำหรับ Android - วิธีออกจากระบบโดยใช้โปรแกรม
ล่าสุด Facebook เปิดตัว SDK 4 พร้อมอัปเดตใหม่สุดเจ๋ง ฉันพยายามเปลี่ยนเป็น SDK4 เพื่อใช้คุณสมบัติใหม่อย่างไรก็ตามฉันกำลังดิ้นรนกับคุณสมบัติการเข้าสู่ระบบของ Facebook จนถึงตอนนี้เพื่อออกจากระบบ Facebook โดยใช้โปรแกรมฉันใช้: Session session = Session.getActiveSession(); session.closeAndClearTokenInformation(); แต่ดูเหมือนว่า SDK4 จะไม่รองรับเซสชันอีกต่อไปและในเอกสารอย่างเป็นทางการพวกเขากล่าวถึง: มีสองวิธีในการใช้การเข้าสู่ระบบ Facebook บน Android: คลาส LoginButton - ซึ่งมีปุ่มที่คุณสามารถเพิ่มลงใน UI ของคุณ เป็นไปตามโทเค็นการเข้าถึงปัจจุบันและสามารถล็อกบุคคลเข้าและออกได้ ดูเหมือนว่าจะไม่มีวิธีออกจากระบบ Facebook โดยใช้โปรแกรมยกเว้นการใช้ LoginButton ใครมีความคิดอย่างไรโปรดแบ่งปันที่นี่

9
ฉันจะสร้างเส้นขอบรอบ ๆ LinearLayout ของ Android ได้อย่างไร
ฉันมีเลย์เอาต์ขนาดใหญ่หนึ่งเลย์เอาต์และอีกหนึ่งเลย์เอาต์ที่เล็กกว่าอยู่ข้างใน ฉันจะสร้างเส้นขอบรอบเลย์เอาต์ขนาดเล็กได้อย่างไร

7
เมื่อใดที่จะไม่เรียก super () วิธีการเมื่อแทนที่?
เมื่อฉันสร้างคลาสที่กำหนดเองของ Android ฉันจะextendเป็นคลาสดั้งเดิม จากนั้นเมื่อฉันต้องการที่จะแทนที่วิธีฐานที่ฉันมักจะเรียกsuper()วิธีการเช่นเดียวกับที่ฉันมักจะทำในonCreate, onStopฯลฯ และฉันคิดว่านี่เป็นเช่นนั้นตั้งแต่แรกเริ่มทีม Android แนะนำให้เราเรียกร้องให้superลบล้างทุกวิธี แต่ในหนังสือหลายเล่มฉันเห็นว่านักพัฒนาที่มีประสบการณ์มากกว่าตัวเองมักจะละเว้นการโทรsuperและฉันสงสัยจริงๆว่าพวกเขาทำไปเพราะขาดความรู้ ยกตัวอย่างเช่นดูที่นี้พื้นฐานแซ็กโซโฟนระดับ parser ที่superถูกละไว้ในstartElement, charactersและendElement: public class SAXParser extends DefaultHandler{ public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { if(qName.equalsIgnoreCase("XXY")) { //do something } } public void characters(char[] ch, int start, int length) throws SAXException { //do something …
113 java  android  overriding 

5
การเข้าถึง SharedPreferences ควรทำจาก UI Thread หรือไม่
ด้วยการเปิดตัว Gingerbread ที่ฉันได้รับการทดสอบด้วยบางส่วนของใหม่ API ซึ่งเป็นหนึ่งของพวกเขาถูกStrictMode getSharedPreferences()ผมสังเกตเห็นว่าหนึ่งในคำเตือนสำหรับ นี่คือคำเตือน: StrictMode policy violation; ~duration=1949 ms: android.os.StrictMode$StrictModeDiskReadViolation: policy=23 violation=2 และมีการกำหนดให้มีการgetSharedPreferences()โทรบนเธรด UI ควรSharedPreferencesเข้าถึงและเปลี่ยนแปลงจากเธรด UI หรือไม่

5
เป็นไปได้หรือไม่ที่จะประกาศที่เก็บ git เป็นการพึ่งพาใน android gradle?
ฉันต้องการใช้ lib เวอร์ชันหลักจาก mavencentral เป็นไปได้หรือไม่ที่จะประกาศที่เก็บ git เป็นการพึ่งพาใน android gradle?

4
ปุ่ม Android ได้เรียกใช้ setOnTouchListener แต่ไม่ได้ลบล้าง performClick
เมื่อฉันพยายามเพิ่มลงonTouchListner()ในปุ่มมันทำให้ฉันได้รับไฟล์ ปุ่มได้เรียกใช้ setOnTouchListener แต่ไม่ได้ลบล้าง performClick คำเตือน. มีใครทราบวิธีแก้ไขบ้างครับ? btnleftclick.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View view, MotionEvent motionEvent) { return false; } }); ข้อผิดพลาด: มุมมองแบบกำหนดเองได้เรียกใช้ setOnTouchListener แต่ไม่ได้แทนที่ performClick หากมุมมองที่แทนที่ onTouchEvent หรือใช้ OnTouchListener จะไม่ใช้งาน performClick และเรียกมันเมื่อตรวจพบการคลิกมุมมองอาจไม่จัดการการกระทำการเข้าถึงอย่างถูกต้อง ตรรกะในการจัดการการคลิกควรวางไว้ใน View # performClick เนื่องจากบริการการเข้าถึงบางอย่างเรียกใช้ performClick เมื่อการดำเนินการคลิกเกิดขึ้น

26
Android - ปุ่มย้อนกลับในแถบชื่อเรื่อง
ในหลาย ๆ แอพ (ปฏิทิน, ไดรฟ์, Play Store) เมื่อคุณแตะปุ่มและเข้าสู่กิจกรรมใหม่ไอคอนในแถบชื่อเรื่องจะเปลี่ยนเป็นปุ่มย้อนกลับ แต่สำหรับแอปที่ฉันกำลังสร้างนั้นจะไม่ทำเช่นนั้น ฉันจะทำให้ไอคอนนั้นนำคุณกลับไปที่หน้าจอก่อนหน้าได้อย่างไร

11
เล่นเสียงที่ปุ่มคลิก Android
ฉันจะรับปุ่มเพื่อเล่นเสียงจาก raw เมื่อคลิกได้อย่างไร? ฉันเพิ่งสร้างปุ่มที่มี id button1แต่ไม่ว่าฉันจะเขียนโค้ดอะไรทั้งหมดก็ผิด import android.media.MediaPlayer; public class BasicScreenActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_basic_screen); } Button one = (Button)this.findViewById(R.id.button1); MediaPlayer = mp; mp = MediaPlayer.create(this, R.raw.soho); zero.setOnCliclListener(new View.OnClickListener() ) @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items …

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