THẢO LUẬN

thg 1 19, 2021 8:42 SA

@Override

public int onStartCommand(Intent intent, int flags, int startId) {

    mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
    String channelId = getString(R.string.project_id);
    android.app.NotificationManager notificationManager = (android.app.NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        NotificationChannel channel = new NotificationChannel(
                channelId,
                "Channel human readable title",
                android.app.NotificationManager.IMPORTANCE_DEFAULT);
        notificationManager.createNotificationChannel(channel);

    }
    Intent intent1 = new Intent(this, MainActivity.class);
    intent1.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    PendingIntent pendingIntent = PendingIntent.getActivity(App.getInstance(), 0, intent1, PendingIntent.FLAG_ONE_SHOT);

    Notification notification = new NotificationCompat.Builder(this)
            .setSmallIcon(R.drawable.ic_launcher)
            .setContentTitle("Icar Tracking")
            .setContentText("Giữ an toàn bạn nhé!!!")
            .setAutoCancel(false)
            .setContentIntent(pendingIntent)
            .setOngoing(true)
            .setChannelId(getString(R.string.project_id))
            .build();
    startForeground(2001, notification);
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
        return START_NOT_STICKY;
    }
    mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3000,
            0, mLocationListener);
    return START_NOT_STICKY;
}

Mình đã thử startForceground nhưng khi kill app thì khoảng 20s sau service vẫn ngỏm là sao ạ

0
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 1 19, 2021 8:38 SA

Theme của mình đã phức tạp ở việc tạo css mới để ghi đè css cũ, thay đổi layout và có tạo ra hai nhánh ở git để quản lý rồi, giờ mình chỉ muốn là laravel có hỗ trợ multiple theme ở trong thư mục resources, tạo 2 view và control nó dc k?

0

@cyb3reagle giữa dòng đời tất nập, ta vô tình đâm phầm phập vào nhau 😆

0

Chúng ta như những người xa lạ vô tình gặp nhau giữa dòng đời thôi bác ơi.

0

@cyb3reagle Nói chung là cái xóa log kia thì mình k được nhưng 2 người đồng nghiệp của mình thì xóa bt, còn mình thì xóa log bằng cái cách convert file log, vì khi đấy k có payload convert được thì nó sẽ trả về rỗng ✌️. Cơ mà bác có phải là minhnb mà em biết k nhỉ :-s.

0

chắc cuối năm phải làm cái lễ cúng tổ nghề thôi =)))

0

Tâm linh bạn ơi, mình cũng là người chơi hệ tâm linh thôi 😦

0
thg 1 19, 2021 7:45 SA

Bài viết rất hay và bổ ích ❤️ cảm ơn bạn rất nhiều

+1

bro biết vì sao chưa xóa được log chưa nhỉ. mình cũng gặp TH tương tự mà không hiểu vì sao... :3

+1
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 1 19, 2021 6:34 SA

Đúng rồi b, mình đang làm như vậy là lưu trên 2 nhánh khác nhau ở git. Giờ làm sau để trên môi trường production, sẽ cho người dùng sử dụng giao diện tùy vào lựa chọn của khách hàng.

0
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 1 19, 2021 6:33 SA

Cảm ơn b đã quan tâm, của mình cụ thể là như sau:

  • Project của mình hiện đang hoạt động với giao diện cũ trên nhánh master ở gitlab.
  • Vẫn với project đó mình có thay đổi giao diện ở một nhánh mới trên git gồm: File css mới thay đổi để ghi đè các css cũ, thay đổi về bố cục layout, thay đổi về element trong html ở view.

Vấn đề giờ mình muốn đó là: Sẽ multiple theme, tức là sử dụng 2 theme hoạt động cùng một lúc tùy thuộc vào người dùng lựa chọn kiểu như facebook chọn giao diện mới khi sử dụng ở thời gian đầu, về sau nếu oke thì mình mới chuyển hoàn toàn sang giao diện mới đề dùng.

++ Lưu ý là project này đã có cả tính năng và logic đang hoạt động r.

0
thg 1 19, 2021 6:15 SA

@HungNguyenVan Chỗ này nó phức tạp hơn cách trình bày của a nhiều lắm. Nhưng có thể hiểu nôm na, phần stack memory (chứa biến local và function call) sẽ nhỏ hơn rất nhiều so với heap memory (chứa các object, instance...), mỗi phần sẽ bắn ra lỗi khác nhau nếu như bộ nhớ của chúng ko kịp giải phóng, hoặc đủ để chứa thêm các thành phần khác nữa. Cụ thể :

  • StackOverFlowError => lỗi này sẽ bắn ra bên Stack.
  • OutOfMemoryError => lỗi này sẽ bắn ra bên Heap (sẽ dễ thấy hơn trên Android, khi em tạo ra những object lớn cùng lúc VD: map, image... mà không được tối ưu ) ==> A đang tưởng tượng heap overflow là case này.
+1
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 1 19, 2021 5:57 SA

@Devsuccess Như bạn Khang nói là mình thấy ổn đó, bạn có thể chia sẻ cụ thể hơn về bài toán của bạn được ko? Vì cái theme mà mọi người đang hiểu là kiểu như đổi tone màu của website, font chữ, cỡ chữ... ý là đổi style thôi chứ bố cục vẫn giữ nguyên.

0

bác tiên phong áp dụng trước biết đâu các anh em khác lại thấy hay mà cũng áp dụng theo thì sao =)) ví dụ như sử dụng BEM để đặt class name mình thấy khá hay

0

Hay lắm. Nhưng công ty toàn anh em không biết dùng thì việc mình áp dụng vào sợ ăn chửi quá 😦(

0

cảm ơn anh đã ủng hộ bài viết 😀

0
thg 1 19, 2021 4:05 SA

@sven_9x

0

bài hay lắm em ơi👍👍👍👍👍

+1

đã sửa nhé,

Đấng thứ tội con, Batman.

+1

@phamhuutruong7 Bạn chỉ mình vài bước cơ bản khi clone về trên terminal với

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí